diff --git a/ARCs/arc-0062.md b/ARCs/arc-0062.md index b0ef17633..7d22dfb9a 100644 --- a/ARCs/arc-0062.md +++ b/ARCs/arc-0062.md @@ -146,15 +146,15 @@ auto-populated by the simulated getter call. An ASA conforming to this ARC **MUST** specify the Circulating Supply App ID. -> To avoid ecosystem fragmentation this ARC does not propose any new method to specify +> To avoid ecosystem fragmentation, this ARC does not propose any new method to specify > the metadata of an ASA. Instead, it only extends already existing standards. If the ASA also conforms to any ARC that supports additional `properties` ([ARC-3](./arc-0003.md), -[ARC-19](./arc-0019.md), [ARC-69](./arc-0069.md)), +[ARC-19](./arc-0019.md), etc.) as metadata declared in the ASA URL field, then it **MUST** include a `arc-62` key and set the corresponding value to a map, including the ID of the Circulating Supply App as a value for the key `application-id`. -#### Example +#### Example: ARC-3 Property ```json { @@ -231,6 +231,10 @@ foreign resources pooling (version 9 or greater). A reference implementation **SHOULD** use 3 external addresses, in addition to the Reserve Address, to define the not circulating supply. +> ⚠️The specification _is not limited_ to 3 external addresses. The implementations +> **MAY** extend the non-circulating labels using more addresses, global storage, +> box storage, etc. + The **RECOMMENDED** labels for not-circulating balances are: `burned`, `locked` and `generic`. @@ -326,6 +330,10 @@ is set to the Global `ZeroAddress` or not opted-in `asset_id`; - `generic_balance` is the ASA balance hold by a Generic Address or `0` if the address is set to the Global `ZeroAddress` or not opted-in `asset_id`. +> ⚠️The implementations **MAY** extend the calculation of `circulating_supply` using +> global storage, box storage, etc. See [Example 2](./arc-0062.md#example-2) for +> reference. + ## Security Considerations Permissions over the Circulating Supply App setting and update **SHOULD** be granted diff --git a/assets/arc-0062/.algokit/static-analysis/snapshots/CirculatingSupply.approval.json b/assets/arc-0062/.algokit/static-analysis/snapshots/CirculatingSupply.approval.json deleted file mode 100644 index 64bb91798..000000000 --- a/assets/arc-0062/.algokit/static-analysis/snapshots/CirculatingSupply.approval.json +++ /dev/null @@ -1,67146 +0,0 @@ -{ - "success": false, - "error": null, - "result": [ - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"unprotected-deletable\", Impact: High, Confidence: High\nDescription: Unprotected Deletable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#unprotected-deletable-application\n", - "check": "unprotected-deletable", - "impact": "High", - "confidence": "High", - "help": "- Avoid deletable applications.\n- Add access controls to the vulnerable method.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"unprotected-updatable\", Impact: High, Confidence: High\nDescription: Unprotected Upgradable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#unprotected-updatable-application\n", - "check": "unprotected-updatable", - "impact": "High", - "confidence": "High", - "help": "- Avoid upgradable applications.\n- Add access controls to the vulnerable method.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"can-close-account\", Impact: High, Confidence: High\nDescription: Missing CloseRemainderTo field Validation\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-closeremainderto-field-validation\n", - "check": "can-close-account", - "impact": "High", - "confidence": "High", - "help": "Validate `CloseRemainderTo` field in the LogicSig.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"can-close-asset\", Impact: High, Confidence: High\nDescription: Missing AssetCloseTo Field Validation\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-assetcloseto-field-validation\n", - "check": "can-close-asset", - "impact": "High", - "confidence": "High", - "help": "Validate `AssetCloseTo` field in the LogicSig.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"is-deletable\", Impact: High, Confidence: High\nDescription: Deletable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#deletable-application\n", - "check": "is-deletable", - "impact": "High", - "confidence": "High", - "help": "Do not approve `DeleteApplication` type application calls.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"is-updatable\", Impact: High, Confidence: High\nDescription: Upgradable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#upgradable-application\n", - "check": "is-updatable", - "impact": "High", - "confidence": "High", - "help": "Do not approve `UpdateApplication` type application calls.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 180, - "description": "\nCheck: \"missing-fee-check\", Impact: High, Confidence: High\nDescription: Missing Fee Field Validation\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-fee-field-validation\n", - "check": "missing-fee-check", - "impact": "High", - "confidence": "High", - "help": "Validate `Fee` field in the LogicSig.", - "paths": [ - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 7 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "25: int 0", - "26: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 19 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "126: int 1", - "127: b set_asset_bool_merge@4" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 8 -> 17 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 10 -> 22 -> 24 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "207: set_not_circulating_address_switch_case_0@1:", - "210: byte \"burned\"", - "211: frame_dig -2", - "212: app_global_put", - "213: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 10 -> 22 -> 25 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "215: set_not_circulating_address_switch_case_1@2:", - "218: byte \"locked\"", - "219: frame_dig -2", - "220: app_global_put", - "221: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 10 -> 22 -> 26 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "223: set_not_circulating_address_switch_case_2@3:", - "226: byte \"generic\"", - "227: frame_dig -2", - "228: app_global_put" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 14 -> 15 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "93: txn ApplicationID", - "94: !", - "95: assert", - "96: int 1", - "97: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 14 -> 16 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "99: __puya_arc4_router___after_if_else@11:", - "102: int 0", - "103: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 7 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "25: int 0", - "26: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 19 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "126: int 1", - "127: b set_asset_bool_merge@4" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 8 -> 17 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 10 -> 22 -> 24 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "207: set_not_circulating_address_switch_case_0@1:", - "210: byte \"burned\"", - "211: frame_dig -2", - "212: app_global_put", - "213: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 10 -> 22 -> 25 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "215: set_not_circulating_address_switch_case_1@2:", - "218: byte \"locked\"", - "219: frame_dig -2", - "220: app_global_put", - "221: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 10 -> 22 -> 26 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "223: set_not_circulating_address_switch_case_2@3:", - "226: byte \"generic\"", - "227: frame_dig -2", - "228: app_global_put" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 14 -> 15 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "93: txn ApplicationID", - "94: !", - "95: assert", - "96: int 1", - "97: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 14 -> 16 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "99: __puya_arc4_router___after_if_else@11:", - "102: int 0", - "103: retsub" - ], - [ - "10: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"group-size-check\", Impact: High, Confidence: High\nDescription: Usage of absolute indexes without validating GroupSize\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-groupsize-validation\n", - "check": "group-size-check", - "impact": "High", - "confidence": "High", - "help": "- Avoid using absolute indexes. Validate GroupSize if used.\n- Favor using ARC-4 ABI and relative indexes for group transactions.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 180, - "description": "\nCheck: \"rekey-to\", Impact: High, Confidence: High\nDescription: Rekeyable Logic Signatures\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#rekeyable-logicsig\n", - "check": "rekey-to", - "impact": "High", - "confidence": "High", - "help": "Validate `RekeyTo` field in the LogicSig.", - "paths": [ - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 7 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "25: int 0", - "26: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 19 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "126: int 1", - "127: b set_asset_bool_merge@4" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 8 -> 17 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 10 -> 22 -> 24 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "207: set_not_circulating_address_switch_case_0@1:", - "210: byte \"burned\"", - "211: frame_dig -2", - "212: app_global_put", - "213: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 10 -> 22 -> 25 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "215: set_not_circulating_address_switch_case_1@2:", - "218: byte \"locked\"", - "219: frame_dig -2", - "220: app_global_put", - "221: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 10 -> 22 -> 26 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "223: set_not_circulating_address_switch_case_2@3:", - "226: byte \"generic\"", - "227: frame_dig -2", - "228: app_global_put" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 14 -> 15 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "93: txn ApplicationID", - "94: !", - "95: assert", - "96: int 1", - "97: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 2 -> 45 -> 3 -> 5 -> 14 -> 16 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "6: callsub __init__" - ], - [ - "475: __init__:", - "478: proto 0 0", - "482: byte \"asset_id\"", - "483: int 0", - "484: app_global_put", - "487: byte \"burned\"", - "488: global ZeroAddress", - "493: app_global_put", - "496: byte \"locked\"", - "497: global ZeroAddress", - "502: app_global_put", - "505: byte \"generic\"", - "506: global ZeroAddress", - "511: app_global_put", - "512: retsub" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "99: __puya_arc4_router___after_if_else@11:", - "102: int 0", - "103: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 7 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "25: int 0", - "26: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 19 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "126: int 1", - "127: b set_asset_bool_merge@4" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 8 -> 17 -> 18 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "121: int 0", - "122: byte \"asset_id\"", - "123: app_global_get_ex", - "124: assert", - "125: bnz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 8 -> 17 -> 20 -> 21 -> 9 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "28: __puya_arc4_router___set_asset_route@2:", - "31: txn OnCompletion", - "32: !", - "33: assert", - "34: txn ApplicationID", - "35: assert", - "38: txna ApplicationArgs 1", - "39: btoi", - "42: callsub set_asset" - ], - [ - "107: set_asset:", - "111: proto 1 0", - "115: txn Sender", - "116: frame_dig -1", - "117: asset_params_get AssetManager", - "118: assert", - "119: ==", - "120: bz set_asset_bool_false@3" - ], - [ - "129: set_asset_bool_false@3:", - "130: int 0" - ], - [ - "132: set_asset_bool_merge@4:", - "136: assert", - "140: byte \"asset_id\"", - "141: frame_dig -1", - "142: app_global_put", - "143: retsub" - ], - [ - "43: int 1", - "44: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 10 -> 22 -> 24 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "207: set_not_circulating_address_switch_case_0@1:", - "210: byte \"burned\"", - "211: frame_dig -2", - "212: app_global_put", - "213: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 10 -> 22 -> 25 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "215: set_not_circulating_address_switch_case_1@2:", - "218: byte \"locked\"", - "219: frame_dig -2", - "220: app_global_put", - "221: b set_not_circulating_address_switch_case_next@5" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 10 -> 22 -> 26 -> 27 -> 11 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "46: __puya_arc4_router___set_not_circulating_address_route@3:", - "49: txn OnCompletion", - "50: !", - "51: assert", - "52: txn ApplicationID", - "53: assert", - "56: txna ApplicationArgs 1", - "57: txna ApplicationArgs 2", - "58: extract 2 0", - "61: callsub set_not_circulating_address" - ], - [ - "147: set_not_circulating_address:", - "151: proto 2 0", - "154: int 0", - "155: byte \"asset_id\"", - "156: app_global_get_ex", - "157: assert", - "161: txn Sender", - "162: swap", - "163: dup", - "164: asset_params_get AssetManager", - "165: assert", - "166: uncover 2", - "167: ==", - "168: assert", - "171: frame_dig -2", - "172: len", - "173: int 32", - "174: ==", - "175: assert", - "176: frame_dig -2", - "177: swap", - "178: asset_holding_get AssetBalance", - "179: bury 1", - "180: assert", - "183: byte \"burned\"", - "186: byte \"locked\"", - "189: byte \"generic\"", - "201: frame_dig -1", - "202: match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3" - ], - [ - "223: set_not_circulating_address_switch_case_2@3:", - "226: byte \"generic\"", - "227: frame_dig -2", - "228: app_global_put" - ], - [ - "230: set_not_circulating_address_switch_case_next@5:", - "231: retsub" - ], - [ - "62: int 1", - "63: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 29 -> 31 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "304: frame_dig -1", - "305: asset_params_get AssetReserve", - "306: assert", - "307: frame_dig -1", - "308: asset_holding_get AssetBalance", - "309: bury 1", - "310: bnz arc62_get_circulating_supply_ternary_false@3" - ], - [ - "319: arc62_get_circulating_supply_ternary_false@3:", - "322: frame_dig -1", - "323: asset_params_get AssetReserve", - "324: assert", - "325: frame_dig -1", - "326: asset_holding_get AssetBalance", - "327: assert", - "328: frame_bury 2" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 33 -> 35 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "342: frame_dig 3", - "343: frame_dig -1", - "344: asset_holding_get AssetBalance", - "345: bury 1", - "346: bnz arc62_get_circulating_supply_ternary_false@7" - ], - [ - "355: arc62_get_circulating_supply_ternary_false@7:", - "358: frame_dig 3", - "359: frame_dig -1", - "360: asset_holding_get AssetBalance", - "361: assert", - "362: frame_bury 0" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 37 -> 39 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "376: frame_dig 4", - "377: frame_dig -1", - "378: asset_holding_get AssetBalance", - "379: bury 1", - "380: bnz arc62_get_circulating_supply_ternary_false@11" - ], - [ - "389: arc62_get_circulating_supply_ternary_false@11:", - "392: frame_dig 4", - "393: frame_dig -1", - "394: asset_holding_get AssetBalance", - "395: assert", - "396: frame_bury 1" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 41 -> 43 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "410: frame_dig 5", - "411: frame_dig -1", - "412: asset_holding_get AssetBalance", - "413: bury 1", - "414: bnz arc62_get_circulating_supply_ternary_false@15" - ], - [ - "422: arc62_get_circulating_supply_ternary_false@15:", - "425: frame_dig 5", - "426: frame_dig -1", - "427: asset_holding_get AssetBalance", - "428: assert" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 6 -> 12 -> 28 -> 30 -> 32 -> 34 -> 36 -> 38 -> 40 -> 42 -> 44 -> 13 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "20: method set_asset(uint64)void", - "21: method set_not_circulating_address(address,string)void", - "22: method arc62_get_circulating_supply(uint64)uint64", - "23: txna ApplicationArgs 0", - "24: match __puya_arc4_router___set_asset_route@2 __puya_arc4_router___set_not_circulating_address_route@3 __puya_arc4_router___arc62_get_circulating_supply_route@4" - ], - [ - "65: __puya_arc4_router___arc62_get_circulating_supply_route@4:", - "68: txn OnCompletion", - "69: !", - "70: assert", - "71: txn ApplicationID", - "72: assert", - "75: txna ApplicationArgs 1", - "76: btoi", - "79: callsub arc62_get_circulating_supply" - ], - [ - "235: arc62_get_circulating_supply:", - "239: proto 1 1", - "240: byte \"\"", - "241: dupn 2", - "244: int 0", - "245: byte \"burned\"", - "246: app_global_get_ex", - "247: swap", - "248: dup", - "249: uncover 2", - "250: assert", - "251: len", - "252: int 32", - "253: ==", - "254: assert", - "257: int 0", - "258: byte \"locked\"", - "259: app_global_get_ex", - "260: swap", - "261: dup", - "262: uncover 2", - "263: assert", - "264: len", - "265: int 32", - "266: ==", - "267: assert", - "270: int 0", - "271: byte \"generic\"", - "272: app_global_get_ex", - "273: swap", - "274: dup", - "275: uncover 2", - "276: assert", - "277: len", - "278: int 32", - "279: ==", - "280: assert", - "284: int 0", - "285: byte \"asset_id\"", - "286: app_global_get_ex", - "287: assert", - "288: frame_dig -1", - "289: ==", - "290: assert", - "293: frame_dig -1", - "294: asset_params_get AssetReserve", - "295: assert", - "296: global ZeroAddress", - "297: ==", - "301: bnz arc62_get_circulating_supply_ternary_true@2" - ], - [ - "312: arc62_get_circulating_supply_ternary_true@2:", - "315: int 0", - "316: frame_bury 2", - "317: b arc62_get_circulating_supply_ternary_merge@4" - ], - [ - "330: arc62_get_circulating_supply_ternary_merge@4:", - "333: frame_dig 3", - "334: global ZeroAddress", - "335: ==", - "339: bnz arc62_get_circulating_supply_ternary_true@6" - ], - [ - "348: arc62_get_circulating_supply_ternary_true@6:", - "351: int 0", - "352: frame_bury 0", - "353: b arc62_get_circulating_supply_ternary_merge@8" - ], - [ - "364: arc62_get_circulating_supply_ternary_merge@8:", - "367: frame_dig 4", - "368: global ZeroAddress", - "369: ==", - "373: bnz arc62_get_circulating_supply_ternary_true@10" - ], - [ - "382: arc62_get_circulating_supply_ternary_true@10:", - "385: int 0", - "386: frame_bury 1", - "387: b arc62_get_circulating_supply_ternary_merge@12" - ], - [ - "398: arc62_get_circulating_supply_ternary_merge@12:", - "401: frame_dig 5", - "402: global ZeroAddress", - "403: ==", - "407: bnz arc62_get_circulating_supply_ternary_true@14" - ], - [ - "416: arc62_get_circulating_supply_ternary_true@14:", - "419: int 0", - "420: b arc62_get_circulating_supply_ternary_merge@16" - ], - [ - "430: arc62_get_circulating_supply_ternary_merge@16:", - "433: frame_dig -1", - "434: asset_params_get AssetTotal", - "435: assert", - "439: frame_dig 2", - "440: -", - "445: frame_dig 0", - "446: -", - "452: frame_dig 1", - "453: -", - "460: swap", - "461: -", - "470: frame_bury 0", - "471: retsub" - ], - [ - "80: itob", - "81: byte 0x151f7c75", - "82: swap", - "83: concat", - "84: log", - "85: int 1", - "86: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 14 -> 15 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "93: txn ApplicationID", - "94: !", - "95: assert", - "96: int 1", - "97: retsub" - ], - [ - "10: return" - ] - ] - }, - { - "short": "0 -> 1 -> 3 -> 5 -> 14 -> 16 -> 4", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.approval_program:", - "4: txn ApplicationID", - "5: bnz main_entrypoint@2" - ], - [ - "8: main_entrypoint@2:", - "9: callsub __puya_arc4_router__" - ], - [ - "14: __puya_arc4_router__:", - "17: proto 0 1", - "18: txn NumAppArgs", - "19: bz __puya_arc4_router___bare_routing@7" - ], - [ - "88: __puya_arc4_router___bare_routing@7:", - "91: txn OnCompletion", - "92: bnz __puya_arc4_router___after_if_else@11" - ], - [ - "99: __puya_arc4_router___after_if_else@11:", - "102: int 0", - "103: retsub" - ], - [ - "10: return" - ] - ] - } - ] - } - ] -} \ No newline at end of file diff --git a/assets/arc-0062/.algokit/static-analysis/snapshots/CirculatingSupply.clear.json b/assets/arc-0062/.algokit/static-analysis/snapshots/CirculatingSupply.clear.json deleted file mode 100644 index cd4f69b2f..000000000 --- a/assets/arc-0062/.algokit/static-analysis/snapshots/CirculatingSupply.clear.json +++ /dev/null @@ -1,208 +0,0 @@ -{ - "success": false, - "error": null, - "result": [ - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"unprotected-deletable\", Impact: High, Confidence: High\nDescription: Unprotected Deletable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#unprotected-deletable-application\n", - "check": "unprotected-deletable", - "impact": "High", - "confidence": "High", - "help": "- Avoid deletable applications.\n- Add access controls to the vulnerable method.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"unprotected-updatable\", Impact: High, Confidence: High\nDescription: Unprotected Upgradable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#unprotected-updatable-application\n", - "check": "unprotected-updatable", - "impact": "High", - "confidence": "High", - "help": "- Avoid upgradable applications.\n- Add access controls to the vulnerable method.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"can-close-account\", Impact: High, Confidence: High\nDescription: Missing CloseRemainderTo field Validation\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-closeremainderto-field-validation\n", - "check": "can-close-account", - "impact": "High", - "confidence": "High", - "help": "Validate `CloseRemainderTo` field in the LogicSig.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"can-close-asset\", Impact: High, Confidence: High\nDescription: Missing AssetCloseTo Field Validation\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-assetcloseto-field-validation\n", - "check": "can-close-asset", - "impact": "High", - "confidence": "High", - "help": "Validate `AssetCloseTo` field in the LogicSig.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"is-deletable\", Impact: High, Confidence: High\nDescription: Deletable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#deletable-application\n", - "check": "is-deletable", - "impact": "High", - "confidence": "High", - "help": "Do not approve `DeleteApplication` type application calls.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"is-updatable\", Impact: High, Confidence: High\nDescription: Upgradable Applications\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#upgradable-application\n", - "check": "is-updatable", - "impact": "High", - "confidence": "High", - "help": "Do not approve `UpdateApplication` type application calls.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"missing-fee-check\", Impact: High, Confidence: High\nDescription: Missing Fee Field Validation\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-fee-field-validation\n", - "check": "missing-fee-check", - "impact": "High", - "confidence": "High", - "help": "Validate `Fee` field in the LogicSig.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - }, - { - "type": "ExecutionPaths", - "count": 0, - "description": "\nCheck: \"group-size-check\", Impact: High, Confidence: High\nDescription: Usage of absolute indexes without validating GroupSize\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#missing-groupsize-validation\n", - "check": "group-size-check", - "impact": "High", - "confidence": "High", - "help": "- Avoid using absolute indexes. Validate GroupSize if used.\n- Favor using ARC-4 ABI and relative indexes for group transactions.", - "paths": [] - }, - { - "type": "ExecutionPaths", - "count": 1, - "description": "\nCheck: \"rekey-to\", Impact: High, Confidence: High\nDescription: Rekeyable Logic Signatures\n\nWiki: https://github.com/crytic/tealer/wiki/Detector-Documentation#rekeyable-logicsig\n", - "check": "rekey-to", - "impact": "High", - "confidence": "High", - "help": "Validate `RekeyTo` field in the LogicSig.", - "paths": [ - { - "short": "0 -> 1", - "blocks": [ - [ - "1: #pragma version 10" - ], - [ - "3: smart_contracts.circulating_supply.contract.CirculatingSupply.clear_state_program:", - "4: int 1", - "5: return" - ] - ] - } - ] - } - ] -} \ No newline at end of file diff --git a/assets/arc-0062/README.md b/assets/arc-0062/README.md index 59d2a01f9..cdf749c76 100644 --- a/assets/arc-0062/README.md +++ b/assets/arc-0062/README.md @@ -3,7 +3,30 @@ This is the reference implementation of ASA Circulating Supply App based on the [ARC-62 specification](../../ARCs/arc-0062.md). -## Example +## Adoption + +Explorers supporting ARC-62: + +- Pera Explorer (example) + +ASA adopting ARC-62: + +- Midas US Treasury Bill Token (mTBILL) + +## Demo + +1. Download the [AppSpec JSON file](./smart_contracts/artifacts/circulating_supply/CirculatingSupply.arc56.json) +2. Open the Lora App Lab in TestNet +3. Enter the App ID `740315445` and click on _"Use existing"_ +4. Upload the AppSpec JSON and click _"Next"_ and then _"Create"_ +5. Open the App +6. Connect a TestNet Wallet +7. Select the `arc62_get_circulating_supply` method and click _"Call"_ +8. Enter `740315456` as `asset_id` argument and click _"Add"_ +9. Click on _"Populate Resources"_ +10. Click on _"Simulate"_ and inspect the result (answer should be `1`) + +## Test Install the project Python dependencies: diff --git a/assets/arc-0062/poetry.lock b/assets/arc-0062/poetry.lock index 48d88f68c..ba1cfd144 100644 --- a/assets/arc-0062/poetry.lock +++ b/assets/arc-0062/poetry.lock @@ -132,43 +132,43 @@ frozenlist = ">=1.1.0" [[package]] name = "algokit-client-generator" -version = "2.0.0" +version = "2.1.0" description = "Algorand typed client Generator" optional = false python-versions = "<4.0,>=3.10" groups = ["dev"] files = [ - {file = "algokit_client_generator-2.0.0-py3-none-any.whl", hash = "sha256:74030e495980b4991f13ff446cd8048dc8910429a00e247057af30f72bae0d7e"}, + {file = "algokit_client_generator-2.1.0-py3-none-any.whl", hash = "sha256:ccf434fcce4cd759a79195295018b49d948c7a4146d56e373a0b77703fbd177f"}, ] [package.dependencies] -algokit-utils = ">=3.0.0,<4.0.0" +algokit-utils = ">=4.0.0,<5.0.0" [[package]] name = "algokit-utils" -version = "3.0.1" +version = "4.0.1" description = "Utilities for Algorand development for use by AlgoKit" optional = false python-versions = "<4.0,>=3.10" groups = ["main", "dev"] files = [ - {file = "algokit_utils-3.0.1-py3-none-any.whl", hash = "sha256:b93bc7ed000f3aeb2ea83b470c7545b4c78a9898a202e3da1f15b6b678bc5db7"}, + {file = "algokit_utils-4.0.1-py3-none-any.whl", hash = "sha256:6fa0c23fa91aa7a513894714ce7754ba32b085ce6f8cbb440318dc0b276818a8"}, ] [package.dependencies] -httpx = ">=0.23.1,<0.24.0" +httpx = ">=0.23.1,<=0.28.1" py-algorand-sdk = ">=2.4.0,<3.0.0" typing-extensions = ">=4.6.0" [[package]] name = "algorand-python" -version = "2.7.0" +version = "2.8.0" description = "API for writing Algorand Python Smart contracts" optional = false python-versions = "<4.0,>=3.12" groups = ["main"] files = [ - {file = "algorand_python-2.7.0-py3-none-any.whl", hash = "sha256:7a77f0b7152eb659bff08108e7216caa7f012c6020fb5122a7805124021b4097"}, + {file = "algorand_python-2.8.0-py3-none-any.whl", hash = "sha256:c05569f768325e4653955f83d58adabc3da7fe1fbc94cc54a15878d52566cbd2"}, ] [[package]] @@ -226,21 +226,21 @@ files = [ [[package]] name = "attrs" -version = "24.3.0" +version = "25.3.0" description = "Classes Without Boilerplate" optional = false python-versions = ">=3.8" groups = ["dev"] files = [ - {file = "attrs-24.3.0-py3-none-any.whl", hash = "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308"}, - {file = "attrs-24.3.0.tar.gz", hash = "sha256:8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff"}, + {file = "attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3"}, + {file = "attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b"}, ] [package.extras] benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier"] tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] @@ -925,61 +925,62 @@ files = [ [[package]] name = "h11" -version = "0.14.0" +version = "0.16.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" groups = ["main", "dev"] files = [ - {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, - {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, + {file = "h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86"}, + {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"}, ] [[package]] name = "httpcore" -version = "0.16.3" +version = "1.0.9" description = "A minimal low-level HTTP client." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" groups = ["main", "dev"] files = [ - {file = "httpcore-0.16.3-py3-none-any.whl", hash = "sha256:da1fb708784a938aa084bde4feb8317056c55037247c787bd7e19eb2c2949dc0"}, - {file = "httpcore-0.16.3.tar.gz", hash = "sha256:c5d6f04e2fc530f39e0c077e6a30caa53f1451096120f1f38b954afd0b17c0cb"}, + {file = "httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55"}, + {file = "httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8"}, ] [package.dependencies] -anyio = ">=3.0,<5.0" certifi = "*" -h11 = ">=0.13,<0.15" -sniffio = "==1.*" +h11 = ">=0.16" [package.extras] +asyncio = ["anyio (>=4.0,<5.0)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<1.0)"] [[package]] name = "httpx" -version = "0.23.3" +version = "0.28.1" description = "The next generation HTTP client." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" groups = ["main", "dev"] files = [ - {file = "httpx-0.23.3-py3-none-any.whl", hash = "sha256:a211fcce9b1254ea24f0cd6af9869b3d29aba40154e947d2a07bb499b3e310d6"}, - {file = "httpx-0.23.3.tar.gz", hash = "sha256:9818458eb565bb54898ccb9b8b251a28785dd4a55afbc23d0eb410754fe7d0f9"}, + {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, + {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, ] [package.dependencies] +anyio = "*" certifi = "*" -httpcore = ">=0.15.0,<0.17.0" -rfc3986 = {version = ">=1.3,<2", extras = ["idna2008"]} -sniffio = "*" +httpcore = "==1.*" +idna = "*" [package.extras] brotli = ["brotli", "brotlicffi"] -cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<13)"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "identify" @@ -1435,19 +1436,19 @@ pip = "*" [[package]] name = "pip-audit" -version = "2.8.0" +version = "2.9.0" description = "A tool for scanning Python environments for known vulnerabilities" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pip_audit-2.8.0-py3-none-any.whl", hash = "sha256:200f50d56cb6fba3a9189c20d53250354f72f161d63b6ef77ae5de2b53044566"}, - {file = "pip_audit-2.8.0.tar.gz", hash = "sha256:9816cbd94de6f618a8965c117433006b3d565a708dc05d5a7be47ab65b66fa05"}, + {file = "pip_audit-2.9.0-py3-none-any.whl", hash = "sha256:348b16e60895749a0839875d7cc27ebd692e1584ebe5d5cb145941c8e25a80bd"}, + {file = "pip_audit-2.9.0.tar.gz", hash = "sha256:0b998410b58339d7a231e5aa004326a294e4c7c6295289cdc9d5e1ef07b1f44d"}, ] [package.dependencies] CacheControl = {version = ">=0.13.0", extras = ["filecache"]} -cyclonedx-python-lib = ">=5,<9" +cyclonedx-python-lib = ">=5,<10" packaging = ">=23.0.0" pip-api = ">=0.0.28" pip-requirements-parser = ">=32.0.0" @@ -1517,14 +1518,14 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "pre-commit" -version = "4.1.0" +version = "4.2.0" description = "A framework for managing and maintaining multi-language pre-commit hooks." optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pre_commit-4.1.0-py2.py3-none-any.whl", hash = "sha256:d29e7cb346295bcc1cc75fc3e92e343495e3ea0196c9ec6ba53f49f10ab6ae7b"}, - {file = "pre_commit-4.1.0.tar.gz", hash = "sha256:ae3f018575a588e30dfddfab9a05448bfbd6b73d78709617b5a2b853549716d4"}, + {file = "pre_commit-4.2.0-py2.py3-none-any.whl", hash = "sha256:a009ca7205f1eb497d10b845e52c838a98b6cdd2102a6c8e4540e94ee75c58bd"}, + {file = "pre_commit-4.2.0.tar.gz", hash = "sha256:601283b9757afd87d40c4c4a9b2b5de9637a8ea02eaff7adc2d0fb4e04841146"}, ] [package.dependencies] @@ -1644,17 +1645,17 @@ files = [ [[package]] name = "puyapy" -version = "4.4.0" +version = "4.8.1" description = "An optimising compiler for Algorand Python" optional = false python-versions = "<4.0,>=3.12" groups = ["dev"] files = [ - {file = "puyapy-4.4.0-py3-none-any.whl", hash = "sha256:69ef74ecc193f94e2a12f6f249c4359a35537cfd16d96409602c72a37c195e1d"}, + {file = "puyapy-4.8.1-py3-none-any.whl", hash = "sha256:078fe2e8af23ad6c2d5fe57b1be1f2e767efc9193d20df5cbcc4e6f7037f5860"}, ] [package.dependencies] -attrs = ">=24.2.0,<25.0.0" +attrs = ">=25.3.0,<26.0.0" cattrs = ">=24.1,<25.0" colorama = {version = ">=0.4.6,<0.5.0", markers = "sys_platform == \"win32\""} docstring-parser = ">=0.14.1" @@ -1663,7 +1664,7 @@ mypy_extensions = ">=1.0.0,<2.0.0" networkx = ">=3.4.2,<4.0.0" packaging = ">=24.0,<25.0" pycryptodomex = ">=3.6.0,<4" -structlog = ">=24.1.0,<25.0.0" +structlog = ">=25.2.0,<26.0.0" typing-extensions = ">=4.11.0,<5.0.0" [[package]] @@ -1811,14 +1812,14 @@ diagrams = ["jinja2", "railroad-diagrams"] [[package]] name = "pytest" -version = "8.3.4" +version = "8.3.5" description = "pytest: simple powerful testing with Python" optional = false python-versions = ">=3.8" groups = ["dev"] files = [ - {file = "pytest-8.3.4-py3-none-any.whl", hash = "sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6"}, - {file = "pytest-8.3.4.tar.gz", hash = "sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761"}, + {file = "pytest-8.3.5-py3-none-any.whl", hash = "sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820"}, + {file = "pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845"}, ] [package.dependencies] @@ -1832,14 +1833,14 @@ dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments [[package]] name = "pytest-cov" -version = "6.0.0" +version = "6.1.1" description = "Pytest plugin for measuring coverage." optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pytest-cov-6.0.0.tar.gz", hash = "sha256:fde0b595ca248bb8e2d76f020b465f3b107c9632e6a1d1705f17834c89dcadc0"}, - {file = "pytest_cov-6.0.0-py3-none-any.whl", hash = "sha256:eee6f1b9e61008bd34975a4d5bab25801eb31898b032dd55addc93e96fcaaa35"}, + {file = "pytest_cov-6.1.1-py3-none-any.whl", hash = "sha256:bddf29ed2d0ab6f4df17b4c55b0a657287db8684af9c42ea546b21b1041b3dde"}, + {file = "pytest_cov-6.1.1.tar.gz", hash = "sha256:46935f7aaefba760e716c2ebfbe1c216240b9592966e7da99ea8292d4d3e2a0a"}, ] [package.dependencies] @@ -1851,14 +1852,14 @@ testing = ["fields", "hunter", "process-tests", "pytest-xdist", "virtualenv"] [[package]] name = "python-dotenv" -version = "1.0.1" +version = "1.1.0" description = "Read key-value pairs from a .env file and set them as environment variables" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" groups = ["main"] files = [ - {file = "python-dotenv-1.0.1.tar.gz", hash = "sha256:e324ee90a023d808f1959c46bcbc04446a10ced277783dc6ee09987c37ec10ca"}, - {file = "python_dotenv-1.0.1-py3-none-any.whl", hash = "sha256:f7b63ef50f1b690dddf550d03497b66d609393b40b564ed0d674909a68ebf16a"}, + {file = "python_dotenv-1.1.0-py3-none-any.whl", hash = "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d"}, + {file = "python_dotenv-1.1.0.tar.gz", hash = "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5"}, ] [package.extras] @@ -1949,24 +1950,6 @@ urllib3 = ">=1.21.1,<3" socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] -[[package]] -name = "rfc3986" -version = "1.5.0" -description = "Validating URI References per RFC 3986" -optional = false -python-versions = "*" -groups = ["main", "dev"] -files = [ - {file = "rfc3986-1.5.0-py2.py3-none-any.whl", hash = "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"}, - {file = "rfc3986-1.5.0.tar.gz", hash = "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835"}, -] - -[package.dependencies] -idna = {version = "*", optional = true, markers = "extra == \"idna2008\""} - -[package.extras] -idna2008 = ["idna"] - [[package]] name = "rich" version = "13.9.4" @@ -1988,30 +1971,30 @@ jupyter = ["ipywidgets (>=7.5.1,<9)"] [[package]] name = "ruff" -version = "0.9.7" +version = "0.11.10" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" groups = ["dev"] files = [ - {file = "ruff-0.9.7-py3-none-linux_armv6l.whl", hash = "sha256:99d50def47305fe6f233eb8dabfd60047578ca87c9dcb235c9723ab1175180f4"}, - {file = "ruff-0.9.7-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:d59105ae9c44152c3d40a9c40d6331a7acd1cdf5ef404fbe31178a77b174ea66"}, - {file = "ruff-0.9.7-py3-none-macosx_11_0_arm64.whl", hash = "sha256:f313b5800483770bd540cddac7c90fc46f895f427b7820f18fe1822697f1fec9"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:042ae32b41343888f59c0a4148f103208bf6b21c90118d51dc93a68366f4e903"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:87862589373b33cc484b10831004e5e5ec47dc10d2b41ba770e837d4f429d721"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a17e1e01bee0926d351a1ee9bc15c445beae888f90069a6192a07a84af544b6b"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:7c1f880ac5b2cbebd58b8ebde57069a374865c73f3bf41f05fe7a179c1c8ef22"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e63fc20143c291cab2841dbb8260e96bafbe1ba13fd3d60d28be2c71e312da49"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:91ff963baed3e9a6a4eba2a02f4ca8eaa6eba1cc0521aec0987da8d62f53cbef"}, - {file = "ruff-0.9.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88362e3227c82f63eaebf0b2eff5b88990280fb1ecf7105523883ba8c3aaf6fb"}, - {file = "ruff-0.9.7-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:0372c5a90349f00212270421fe91874b866fd3626eb3b397ede06cd385f6f7e0"}, - {file = "ruff-0.9.7-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:d76b8ab60e99e6424cd9d3d923274a1324aefce04f8ea537136b8398bbae0a62"}, - {file = "ruff-0.9.7-py3-none-musllinux_1_2_i686.whl", hash = "sha256:0c439bdfc8983e1336577f00e09a4e7a78944fe01e4ea7fe616d00c3ec69a3d0"}, - {file = "ruff-0.9.7-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:115d1f15e8fdd445a7b4dc9a30abae22de3f6bcabeb503964904471691ef7606"}, - {file = "ruff-0.9.7-py3-none-win32.whl", hash = "sha256:e9ece95b7de5923cbf38893f066ed2872be2f2f477ba94f826c8defdd6ec6b7d"}, - {file = "ruff-0.9.7-py3-none-win_amd64.whl", hash = "sha256:3770fe52b9d691a15f0b87ada29c45324b2ace8f01200fb0c14845e499eb0c2c"}, - {file = "ruff-0.9.7-py3-none-win_arm64.whl", hash = "sha256:b075a700b2533feb7a01130ff656a4ec0d5f340bb540ad98759b8401c32c2037"}, - {file = "ruff-0.9.7.tar.gz", hash = "sha256:643757633417907510157b206e490c3aa11cab0c087c912f60e07fbafa87a4c6"}, + {file = "ruff-0.11.10-py3-none-linux_armv6l.whl", hash = "sha256:859a7bfa7bc8888abbea31ef8a2b411714e6a80f0d173c2a82f9041ed6b50f58"}, + {file = "ruff-0.11.10-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:968220a57e09ea5e4fd48ed1c646419961a0570727c7e069842edd018ee8afed"}, + {file = "ruff-0.11.10-py3-none-macosx_11_0_arm64.whl", hash = "sha256:1067245bad978e7aa7b22f67113ecc6eb241dca0d9b696144256c3a879663bca"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4854fd09c7aed5b1590e996a81aeff0c9ff51378b084eb5a0b9cd9518e6cff2"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b4564e9f99168c0f9195a0fd5fa5928004b33b377137f978055e40008a082c5"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5b6a9cc5b62c03cc1fea0044ed8576379dbaf751d5503d718c973d5418483641"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:607ecbb6f03e44c9e0a93aedacb17b4eb4f3563d00e8b474298a201622677947"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7b3a522fa389402cd2137df9ddefe848f727250535c70dafa840badffb56b7a4"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2f071b0deed7e9245d5820dac235cbdd4ef99d7b12ff04c330a241ad3534319f"}, + {file = "ruff-0.11.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a60e3a0a617eafba1f2e4186d827759d65348fa53708ca547e384db28406a0b"}, + {file = "ruff-0.11.10-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:da8ec977eaa4b7bf75470fb575bea2cb41a0e07c7ea9d5a0a97d13dbca697bf2"}, + {file = "ruff-0.11.10-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:ddf8967e08227d1bd95cc0851ef80d2ad9c7c0c5aab1eba31db49cf0a7b99523"}, + {file = "ruff-0.11.10-py3-none-musllinux_1_2_i686.whl", hash = "sha256:5a94acf798a82db188f6f36575d80609072b032105d114b0f98661e1679c9125"}, + {file = "ruff-0.11.10-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:3afead355f1d16d95630df28d4ba17fb2cb9c8dfac8d21ced14984121f639bad"}, + {file = "ruff-0.11.10-py3-none-win32.whl", hash = "sha256:dc061a98d32a97211af7e7f3fa1d4ca2fcf919fb96c28f39551f35fc55bdbc19"}, + {file = "ruff-0.11.10-py3-none-win_amd64.whl", hash = "sha256:5cc725fbb4d25b0f185cb42df07ab6b76c4489b4bfb740a175f3a59c70e8a224"}, + {file = "ruff-0.11.10-py3-none-win_arm64.whl", hash = "sha256:ef69637b35fb8b210743926778d0e45e1bffa850a7c61e428c6b971549b5f5d1"}, + {file = "ruff-0.11.10.tar.gz", hash = "sha256:d522fb204b4959909ecac47da02830daec102eeb100fb50ea9554818d47a5fa6"}, ] [[package]] @@ -2052,14 +2035,14 @@ files = [ [[package]] name = "structlog" -version = "24.4.0" +version = "25.3.0" description = "Structured Logging for Python" optional = false python-versions = ">=3.8" groups = ["dev"] files = [ - {file = "structlog-24.4.0-py3-none-any.whl", hash = "sha256:597f61e80a91cc0749a9fd2a098ed76715a1c8a01f73e336b746504d1aad7610"}, - {file = "structlog-24.4.0.tar.gz", hash = "sha256:b27bfecede327a6d2da5fbc96bd859f114ecc398a6389d664f62085ee7ae6fc4"}, + {file = "structlog-25.3.0-py3-none-any.whl", hash = "sha256:a341f5524004c158498c3127eecded091eb67d3a611e7a3093deca30db06e172"}, + {file = "structlog-25.3.0.tar.gz", hash = "sha256:8dab497e6f6ca962abad0c283c46744185e0c9ba900db52a423cb6db99f7abeb"}, ] [package.extras] @@ -2231,4 +2214,4 @@ propcache = ">=0.2.0" [metadata] lock-version = "2.1" python-versions = "^3.12" -content-hash = "845ef62ddadd28c71ddb249f8fdd37f6d611187e52494dfed5b3bd2fc64f9943" +content-hash = "159d4bca3907b4c46f29e5fb532b10060d91706a60ab2b64d6fd00c96e0a5fa4" diff --git a/assets/arc-0062/pyproject.toml b/assets/arc-0062/pyproject.toml index 9a23e49b4..335c90d84 100644 --- a/assets/arc-0062/pyproject.toml +++ b/assets/arc-0062/pyproject.toml @@ -1,21 +1,21 @@ [tool.poetry] -name = "asa-circulating-supply" -version = "0.1.0" -description = "Algorand smart contracts" +name = "arc62" +version = "1.0.0" +description = "ARC-62: ASA Circulating Supply reference implementation" authors = ["cusma "] readme = "README.md" [tool.poetry.dependencies] python = "^3.12" -algokit-utils = "^3.0.1" -python-dotenv = "^1.0.0" -algorand-python = "^2.7.0" +algokit-utils = "^4.0.1" +python-dotenv = "^1.1.0" +algorand-python = "^2.8.0" algorand-python-testing = "^0.5.0" [tool.poetry.group.dev.dependencies] algokit-client-generator = "^2.0.0" black = {extras = ["d"], version = "*"} -ruff = "^0.9.7" +ruff = "^0.11.10" mypy = "*" pytest = "*" pytest-cov = "*" diff --git a/assets/arc-0062/smart_contracts/__main__.py b/assets/arc-0062/smart_contracts/__main__.py index e3a6a2ecc..2a2701889 100644 --- a/assets/arc-0062/smart_contracts/__main__.py +++ b/assets/arc-0062/smart_contracts/__main__.py @@ -12,7 +12,7 @@ # Set up logging and load environment variables. logging.basicConfig( - level=logging.DEBUG, format="%(asctime)s %(levelname)-10s: %(message)s" + level=logging.INFO, format="%(asctime)s %(levelname)-10s: %(message)s" ) logger = logging.getLogger(__name__) logger.info("Loading .env") diff --git a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.puya.map b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.puya.map index 1e229ff18..a5a47025c 100644 --- a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.puya.map +++ b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.puya.map @@ -3,7 +3,7 @@ "sources": [ "../../circulating_supply/contract.py" ], - "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBQ;AAAgB;AAAhB;AAEmB;AAAf;;AADJ;AAImB;AAAf;;AADJ;AAImB;AAAf;;AADJ;AAZR;;AAAA;;;AAAA;;;;;;;;;;;;;;;;;AAAA;;;AAAA;;;;;;;;AAAA;;AAsDK;;AAAA;AAAA;AAAA;;AAAA;AAtDL;;;AAAA;AAsDK;;;AAAA;AAAA;;;;;;AAAA;AAAA;AAAA;AAAA;;AAxBA;;AAAA;AAAA;AAAA;;AAAA;AA9BL;;;AAAA;;;AAAA;;;AA8BK;;;AAAA;;AAdA;;AAAA;AAAA;AAAA;;AAAA;AAhBL;;;AAAA;AAgBK;;;AAAA;;AAhBL;;AAAA;;;;;;;;;AAgBA;;;AAUe;;AAAc;;AAAA;;AAAA;AAAd;AAAA;;;AAAoC;AAAA;AAAA;AAAA;AAApC;;;;AAAP;AAEA;AAAA;;AAAA;;;;;;AAER;;;AASsB;AAAA;AAAA;AAAA;AAEP;;AAAc;;AAAA;;AAAA;AAAd;AAAP;AACO;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;;AAAP;AAGS;AAEA;AAEA;AALT;;AAAA;;;;;;;;AAQQ;AAFA;AAAA;;AAAA;;AAFA;AAAA;;AAAA;;AAFA;AAAA;;AAAA;;AAQhB;;;;;;;AAYoC;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAR;AAAA;AAAA;AAAA;AACQ;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAR;AAAA;AAAA;AAAA;AACQ;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAR;AAAA;AAAA;AAAA;AAED;AAAA;AAAA;AAAA;AAAZ;;AAAA;AAAP;AAIO;;AAAA;;AAAA;AAAiB;;AAAjB;AAAA;;;AACI;;AAAA;;AAAA;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;;;AAOG;;AAAqB;;AAArB;AAAA;;;AACI;;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;;;AAOG;;AAAqB;;AAArB;AAAA;;;AACI;;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;;;AAOG;;AAAqB;;AAArB;AAAA;;;AACI;;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;AAMA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AADJ;;AAAA;AAFS;;AAAA;;AAAA;;AAAA;;;;AANA;;AAAA;;AAAA;;AAAA;;;;;;AANA;;AAAA;;AAAA;;AAAA;;;;;;AANc;;AAAA;;AAAA;AAAd;;AAAA;;AAAA;;;", + "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBQ;AAAgB;AAAhB;AAEmB;AAAf;;AADJ;AAImB;AAAf;;AADJ;AAImB;AAAf;;AADJ;AAZR;;AAAA;;;AAAA;;;;;;;;;;;;;;;;;AAAA;;;AAAA;;;;;;;;AAAA;;AAsDK;;AAAA;AAAA;AAAA;;AAAA;AAtDL;;;AAAA;AAsDK;;;AAAA;AAAA;;;;;;AAAA;AAAA;AAAA;AAAA;;AAxBA;;AAAA;AAAA;AAAA;;AAAA;AA9BL;;;AAAA;;;AAAA;;;AA8BK;;;AAAA;;AAdA;;AAAA;AAAA;AAAA;;AAAA;AAhBL;;;AAAA;AAgBK;;;AAAA;;AAhBL;;AAAA;;;;;;;;;AAgBA;;;AAUe;;AAAc;;AAAA;;AAAA;AAAd;AAAA;;;AAAoC;AAAA;AAAA;AAAA;AAApC;;;;AAAP;AAEA;AAAA;;AAAA;;;;;;AAER;;;AASsB;AAAA;AAAA;AAAA;AAEP;;AAAc;;AAAA;;AAAA;AAAd;AAAP;AACO;;AAAA;AAAA;;AAAA;;AAAP;AAGS;AAEA;AAEA;AALT;;AAAA;;;;;;;;AAQQ;AAFA;AAAA;;AAAA;;AAFA;AAAA;;AAAA;;AAFA;AAAA;;AAAA;;AAQhB;;;;;;;AAYoC;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAET;AAAA;AAAA;AAAA;AAAZ;;AAAA;AAAP;AAIO;;AAAA;;AAAA;AAAiB;;AAAjB;AAAA;;;AACI;;AAAA;;AAAA;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;;;AAOG;;AAAqB;;AAArB;AAAA;;;AACI;;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;;;AAOG;;AAAqB;;AAArB;AAAA;;;AACI;;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;;;AAOG;;AAAqB;;AAArB;AAAA;;;AACI;;AAAA;;AAAA;;AAAA;;AAAJ;;;AAFH;AAMA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AADJ;;AAAA;AAFS;;AAAA;;AAAA;;AAAA;;;;AANA;;AAAA;;AAAA;;AAAA;;;;;;AANA;;AAAA;;AAAA;;AAAA;;;;;;AANc;;AAAA;;AAAA;AAAd;;AAAA;;AAAA;;;", "op_pc_offset": 0, "pc_events": { "1": { @@ -11,12 +11,12 @@ "params": {}, "block": "main", "stack_in": [], - "op": "intcblock 0 1 32" + "op": "intcblock 0 1" }, - "6": { + "5": { "op": "bytecblock \"asset_id\" \"burned\" \"locked\" \"generic\"" }, - "39": { + "38": { "op": "txn ApplicationID", "defined_out": [ "tmp%0#0" @@ -25,47 +25,107 @@ "tmp%0#0" ] }, - "41": { + "40": { "op": "bnz main_after_if_else@2", "stack_out": [] }, + "43": { + "op": "bytec_0 // \"asset_id\"", + "defined_out": [ + "\"asset_id\"" + ], + "stack_out": [ + "\"asset_id\"" + ] + }, "44": { - "op": "bytec_0 // \"asset_id\"" + "op": "intc_0 // 0", + "defined_out": [ + "\"asset_id\"", + "0" + ], + "stack_out": [ + "\"asset_id\"", + "0" + ] }, "45": { - "op": "intc_0 // 0" + "op": "app_global_put", + "stack_out": [] }, "46": { - "op": "app_global_put" + "op": "bytec_1 // \"burned\"", + "defined_out": [ + "\"burned\"" + ], + "stack_out": [ + "\"burned\"" + ] }, "47": { - "op": "bytec_1 // \"burned\"" + "op": "global ZeroAddress", + "defined_out": [ + "\"burned\"", + "materialized_values%0#0" + ], + "stack_out": [ + "\"burned\"", + "materialized_values%0#0" + ] }, - "48": { - "op": "global ZeroAddress" + "49": { + "op": "app_global_put", + "stack_out": [] }, "50": { - "op": "app_global_put" + "op": "bytec_2 // \"locked\"", + "defined_out": [ + "\"locked\"" + ], + "stack_out": [ + "\"locked\"" + ] }, "51": { - "op": "bytec_2 // \"locked\"" + "op": "global ZeroAddress", + "defined_out": [ + "\"locked\"", + "materialized_values%1#0" + ], + "stack_out": [ + "\"locked\"", + "materialized_values%1#0" + ] }, - "52": { - "op": "global ZeroAddress" + "53": { + "op": "app_global_put", + "stack_out": [] }, "54": { - "op": "app_global_put" + "op": "bytec_3 // \"generic\"", + "defined_out": [ + "\"generic\"" + ], + "stack_out": [ + "\"generic\"" + ] }, "55": { - "op": "bytec_3 // \"generic\"" + "op": "global ZeroAddress", + "defined_out": [ + "\"generic\"", + "materialized_values%2#0" + ], + "stack_out": [ + "\"generic\"", + "materialized_values%2#0" + ] }, - "56": { - "op": "global ZeroAddress" + "57": { + "op": "app_global_put", + "stack_out": [] }, "58": { - "op": "app_global_put" - }, - "59": { "block": "main_after_if_else@2", "stack_in": [], "op": "txn NumAppArgs", @@ -76,20 +136,43 @@ "tmp%0#2" ] }, - "61": { + "60": { "op": "bz main_bare_routing@8", "stack_out": [] }, - "64": { - "op": "pushbytess 0x709b80a8 0x0b62c728 0x5cc2c535 // method \"set_asset(uint64)void\", method \"set_not_circulating_address(address,string)void\", method \"arc62_get_circulating_supply(uint64)uint64\"" + "63": { + "op": "pushbytess 0x709b80a8 0x0b62c728 0x5cc2c535 // method \"set_asset(uint64)void\", method \"set_not_circulating_address(address,string)void\", method \"arc62_get_circulating_supply(uint64)uint64\"", + "defined_out": [ + "Method(arc62_get_circulating_supply(uint64)uint64)", + "Method(set_asset(uint64)void)", + "Method(set_not_circulating_address(address,string)void)" + ], + "stack_out": [ + "Method(set_asset(uint64)void)", + "Method(set_not_circulating_address(address,string)void)", + "Method(arc62_get_circulating_supply(uint64)uint64)" + ] }, - "81": { - "op": "txna ApplicationArgs 0" + "80": { + "op": "txna ApplicationArgs 0", + "defined_out": [ + "Method(arc62_get_circulating_supply(uint64)uint64)", + "Method(set_asset(uint64)void)", + "Method(set_not_circulating_address(address,string)void)", + "tmp%2#0" + ], + "stack_out": [ + "Method(set_asset(uint64)void)", + "Method(set_not_circulating_address(address,string)void)", + "Method(arc62_get_circulating_supply(uint64)uint64)", + "tmp%2#0" + ] }, - "84": { - "op": "match main_set_asset_route@5 main_set_not_circulating_address_route@6 main_arc62_get_circulating_supply_route@7" + "83": { + "op": "match main_set_asset_route@5 main_set_not_circulating_address_route@6 main_arc62_get_circulating_supply_route@7", + "stack_out": [] }, - "92": { + "91": { "block": "main_after_if_else@10", "stack_in": [], "op": "intc_0 // 0", @@ -100,10 +183,11 @@ "tmp%0#0" ] }, - "93": { - "op": "return" + "92": { + "op": "return", + "stack_out": [] }, - "94": { + "93": { "block": "main_arc62_get_circulating_supply_route@7", "stack_in": [], "op": "txn OnCompletion", @@ -114,7 +198,7 @@ "tmp%14#0" ] }, - "96": { + "95": { "op": "!", "defined_out": [ "tmp%15#0" @@ -123,12 +207,12 @@ "tmp%15#0" ] }, - "97": { + "96": { "error": "OnCompletion is not NoOp", "op": "assert // OnCompletion is not NoOp", "stack_out": [] }, - "98": { + "97": { "op": "txn ApplicationID", "defined_out": [ "tmp%16#0" @@ -137,12 +221,12 @@ "tmp%16#0" ] }, - "100": { + "99": { "error": "can only call when not creating", "op": "assert // can only call when not creating", "stack_out": [] }, - "101": { + "100": { "op": "txna ApplicationArgs 1", "defined_out": [ "reinterpret_bytes[8]%1#0" @@ -151,7 +235,7 @@ "reinterpret_bytes[8]%1#0" ] }, - "104": { + "103": { "op": "btoi", "defined_out": [ "tmp%18#0" @@ -160,7 +244,7 @@ "tmp%18#0" ] }, - "105": { + "104": { "callsub": "smart_contracts.circulating_supply.contract.CirculatingSupply.arc62_get_circulating_supply", "op": "callsub arc62_get_circulating_supply", "defined_out": [ @@ -170,7 +254,7 @@ "to_encode%0#0" ] }, - "108": { + "107": { "op": "itob", "defined_out": [ "val_as_bytes%0#0" @@ -179,7 +263,7 @@ "val_as_bytes%0#0" ] }, - "109": { + "108": { "op": "pushbytes 0x151f7c75", "defined_out": [ "0x151f7c75", @@ -190,14 +274,14 @@ "0x151f7c75" ] }, - "115": { + "114": { "op": "swap", "stack_out": [ "0x151f7c75", "val_as_bytes%0#0" ] }, - "116": { + "115": { "op": "concat", "defined_out": [ "tmp%19#0" @@ -206,11 +290,11 @@ "tmp%19#0" ] }, - "117": { + "116": { "op": "log", "stack_out": [] }, - "118": { + "117": { "op": "intc_1 // 1", "defined_out": [ "tmp%0#0" @@ -219,10 +303,11 @@ "tmp%0#0" ] }, - "119": { - "op": "return" + "118": { + "op": "return", + "stack_out": [] }, - "120": { + "119": { "block": "main_set_not_circulating_address_route@6", "stack_in": [], "op": "txn OnCompletion", @@ -233,7 +318,7 @@ "tmp%8#0" ] }, - "122": { + "121": { "op": "!", "defined_out": [ "tmp%9#0" @@ -242,12 +327,12 @@ "tmp%9#0" ] }, - "123": { + "122": { "error": "OnCompletion is not NoOp", "op": "assert // OnCompletion is not NoOp", "stack_out": [] }, - "124": { + "123": { "op": "txn ApplicationID", "defined_out": [ "tmp%10#0" @@ -256,12 +341,12 @@ "tmp%10#0" ] }, - "126": { + "125": { "error": "can only call when not creating", "op": "assert // can only call when not creating", "stack_out": [] }, - "127": { + "126": { "op": "txna ApplicationArgs 1", "defined_out": [ "reinterpret_bytes[32]%0#0" @@ -270,7 +355,7 @@ "reinterpret_bytes[32]%0#0" ] }, - "130": { + "129": { "op": "txna ApplicationArgs 2", "defined_out": [ "reinterpret_bytes[32]%0#0", @@ -281,7 +366,7 @@ "tmp%12#0" ] }, - "133": { + "132": { "op": "extract 2 0", "defined_out": [ "reinterpret_bytes[32]%0#0", @@ -292,12 +377,12 @@ "tmp%13#0" ] }, - "136": { + "135": { "callsub": "smart_contracts.circulating_supply.contract.CirculatingSupply.set_not_circulating_address", "op": "callsub set_not_circulating_address", "stack_out": [] }, - "139": { + "138": { "op": "intc_1 // 1", "defined_out": [ "tmp%0#0" @@ -306,10 +391,11 @@ "tmp%0#0" ] }, - "140": { - "op": "return" + "139": { + "op": "return", + "stack_out": [] }, - "141": { + "140": { "block": "main_set_asset_route@5", "stack_in": [], "op": "txn OnCompletion", @@ -320,7 +406,7 @@ "tmp%3#0" ] }, - "143": { + "142": { "op": "!", "defined_out": [ "tmp%4#0" @@ -329,12 +415,12 @@ "tmp%4#0" ] }, - "144": { + "143": { "error": "OnCompletion is not NoOp", "op": "assert // OnCompletion is not NoOp", "stack_out": [] }, - "145": { + "144": { "op": "txn ApplicationID", "defined_out": [ "tmp%5#0" @@ -343,12 +429,12 @@ "tmp%5#0" ] }, - "147": { + "146": { "error": "can only call when not creating", "op": "assert // can only call when not creating", "stack_out": [] }, - "148": { + "147": { "op": "txna ApplicationArgs 1", "defined_out": [ "reinterpret_bytes[8]%0#0" @@ -357,7 +443,7 @@ "reinterpret_bytes[8]%0#0" ] }, - "151": { + "150": { "op": "btoi", "defined_out": [ "tmp%7#0" @@ -366,12 +452,12 @@ "tmp%7#0" ] }, - "152": { + "151": { "callsub": "smart_contracts.circulating_supply.contract.CirculatingSupply.set_asset", "op": "callsub set_asset", "stack_out": [] }, - "155": { + "154": { "op": "intc_1 // 1", "defined_out": [ "tmp%0#0" @@ -380,10 +466,11 @@ "tmp%0#0" ] }, - "156": { - "op": "return" + "155": { + "op": "return", + "stack_out": [] }, - "157": { + "156": { "block": "main_bare_routing@8", "stack_in": [], "op": "txn OnCompletion", @@ -394,27 +481,47 @@ "tmp%20#0" ] }, - "159": { + "158": { "op": "bnz main_after_if_else@10", "stack_out": [] }, - "162": { - "op": "txn ApplicationID" + "161": { + "op": "txn ApplicationID", + "defined_out": [ + "tmp%21#0" + ], + "stack_out": [ + "tmp%21#0" + ] + }, + "163": { + "op": "!", + "defined_out": [ + "tmp%22#0" + ], + "stack_out": [ + "tmp%22#0" + ] }, "164": { - "op": "!" + "error": "can only call when creating", + "op": "assert // can only call when creating", + "stack_out": [] }, "165": { - "error": "can only call when creating", - "op": "assert // can only call when creating" + "op": "intc_1 // 1", + "defined_out": [ + "tmp%0#0" + ], + "stack_out": [ + "tmp%0#0" + ] }, "166": { - "op": "intc_1 // 1" + "op": "return", + "stack_out": [] }, "167": { - "op": "return" - }, - "168": { "subroutine": "smart_contracts.circulating_supply.contract.CirculatingSupply.set_asset", "params": { "asset_id#0": "uint64" @@ -423,7 +530,7 @@ "stack_in": [], "op": "proto 1 0" }, - "171": { + "170": { "op": "txn Sender", "defined_out": [ "tmp%0#0" @@ -432,7 +539,7 @@ "tmp%0#0" ] }, - "173": { + "172": { "op": "frame_dig -1", "defined_out": [ "asset_id#0 (copy)", @@ -443,7 +550,7 @@ "asset_id#0 (copy)" ] }, - "175": { + "174": { "op": "asset_params_get AssetManager", "defined_out": [ "check%0#0", @@ -456,7 +563,7 @@ "check%0#0" ] }, - "177": { + "176": { "error": "asset exists", "op": "assert // asset exists", "stack_out": [ @@ -464,7 +571,7 @@ "value%0#0" ] }, - "178": { + "177": { "op": "==", "defined_out": [ "tmp%1#0" @@ -473,30 +580,62 @@ "tmp%1#0" ] }, - "179": { + "178": { "op": "bz set_asset_bool_false@3", "stack_out": [] }, + "181": { + "op": "intc_0 // 0", + "defined_out": [ + "0" + ], + "stack_out": [ + "0" + ] + }, "182": { - "op": "intc_0 // 0" + "op": "bytec_0 // \"asset_id\"", + "defined_out": [ + "\"asset_id\"", + "0" + ], + "stack_out": [ + "0", + "\"asset_id\"" + ] }, "183": { - "op": "bytec_0 // \"asset_id\"" + "op": "app_global_get_ex", + "defined_out": [ + "maybe_exists%0#0", + "maybe_value%0#0" + ], + "stack_out": [ + "maybe_value%0#0", + "maybe_exists%0#0" + ] }, "184": { - "op": "app_global_get_ex" + "error": "check self.asset_id exists", + "op": "assert // check self.asset_id exists", + "stack_out": [ + "maybe_value%0#0" + ] }, "185": { - "error": "check self.asset_id exists", - "op": "assert // check self.asset_id exists" + "op": "bnz set_asset_bool_false@3", + "stack_out": [] }, - "186": { - "op": "bnz set_asset_bool_false@3" + "188": { + "op": "intc_1 // 1", + "defined_out": [ + "and_result%0#0" + ], + "stack_out": [ + "and_result%0#0" + ] }, "189": { - "op": "intc_1 // 1" - }, - "190": { "block": "set_asset_bool_merge@4", "stack_in": [ "and_result%0#0" @@ -506,7 +645,7 @@ "defined_out": [], "stack_out": [] }, - "191": { + "190": { "op": "bytec_0 // \"asset_id\"", "defined_out": [ "\"asset_id\"" @@ -515,7 +654,7 @@ "\"asset_id\"" ] }, - "192": { + "191": { "op": "frame_dig -1", "defined_out": [ "\"asset_id\"", @@ -526,15 +665,15 @@ "asset_id#0 (copy)" ] }, - "194": { + "193": { "op": "app_global_put", "stack_out": [] }, - "195": { + "194": { "retsub": true, "op": "retsub" }, - "196": { + "195": { "block": "set_asset_bool_false@3", "stack_in": [], "op": "intc_0 // 0", @@ -545,10 +684,10 @@ "and_result%0#0" ] }, - "197": { + "196": { "op": "b set_asset_bool_merge@4" }, - "200": { + "199": { "subroutine": "smart_contracts.circulating_supply.contract.CirculatingSupply.set_not_circulating_address", "params": { "address#0": "bytes", @@ -558,7 +697,7 @@ "stack_in": [], "op": "proto 2 0" }, - "203": { + "202": { "op": "intc_0 // 0", "defined_out": [ "0" @@ -567,7 +706,7 @@ "0" ] }, - "204": { + "203": { "op": "bytec_0 // \"asset_id\"", "defined_out": [ "\"asset_id\"", @@ -578,7 +717,7 @@ "\"asset_id\"" ] }, - "205": { + "204": { "op": "app_global_get_ex", "defined_out": [ "asset#0", @@ -589,14 +728,14 @@ "maybe_exists%0#0" ] }, - "206": { + "205": { "error": "check self.asset_id exists", "op": "assert // check self.asset_id exists", "stack_out": [ "asset#0" ] }, - "207": { + "206": { "op": "txn Sender", "defined_out": [ "asset#0", @@ -607,7 +746,7 @@ "tmp%0#0" ] }, - "209": { + "208": { "op": "dig 1", "defined_out": [ "asset#0", @@ -620,7 +759,7 @@ "asset#0 (copy)" ] }, - "211": { + "210": { "op": "asset_params_get AssetManager", "defined_out": [ "asset#0", @@ -635,7 +774,7 @@ "check%0#0" ] }, - "213": { + "212": { "error": "asset exists", "op": "assert // asset exists", "stack_out": [ @@ -644,7 +783,7 @@ "value%0#0" ] }, - "214": { + "213": { "op": "==", "defined_out": [ "asset#0", @@ -655,14 +794,14 @@ "tmp%1#0" ] }, - "215": { + "214": { "error": "Unauthorized", "op": "assert // Unauthorized", "stack_out": [ "asset#0" ] }, - "216": { + "215": { "op": "frame_dig -2", "defined_out": [ "address#0 (copy)", @@ -673,94 +812,45 @@ "address#0 (copy)" ] }, - "218": { - "op": "len", - "defined_out": [ - "asset#0", - "tmp%2#0" - ], + "217": { + "op": "swap", "stack_out": [ - "asset#0", - "tmp%2#0" + "address#0 (copy)", + "asset#0" ] }, - "219": { - "op": "intc_2 // 32", + "218": { + "op": "asset_holding_get AssetBalance", "defined_out": [ - "32", - "asset#0", - "tmp%2#0" + "tmp%4#0", + "tmp%5#0" ], "stack_out": [ - "asset#0", - "tmp%2#0", - "32" + "tmp%4#0", + "tmp%5#0" ] }, "220": { - "op": "==", + "op": "bury 1", + "stack_out": [ + "tmp%5#0" + ] + }, + "222": { + "error": "Not Opted-In", + "op": "assert // Not Opted-In", + "stack_out": [] + }, + "223": { + "op": "bytec_1 // \"burned\"", "defined_out": [ - "asset#0", - "tmp%3#0" + "\"burned\"" ], "stack_out": [ - "asset#0", - "tmp%3#0" - ] - }, - "221": { - "error": "Address length is 32 bytes", - "op": "assert // Address length is 32 bytes", - "stack_out": [ - "asset#0" - ] - }, - "222": { - "op": "frame_dig -2", - "stack_out": [ - "asset#0", - "address#0 (copy)" + "\"burned\"" ] }, "224": { - "op": "swap", - "stack_out": [ - "address#0 (copy)", - "asset#0" - ] - }, - "225": { - "op": "asset_holding_get AssetBalance", - "defined_out": [ - "tmp%4#0", - "tmp%5#0" - ], - "stack_out": [ - "tmp%4#0", - "tmp%5#0" - ] - }, - "227": { - "op": "bury 1", - "stack_out": [ - "tmp%5#0" - ] - }, - "229": { - "error": "Not Opted-In", - "op": "assert // Not Opted-In", - "stack_out": [] - }, - "230": { - "op": "bytec_1 // \"burned\"", - "defined_out": [ - "\"burned\"" - ], - "stack_out": [ - "\"burned\"" - ] - }, - "231": { "op": "bytec_2 // \"locked\"", "defined_out": [ "\"burned\"", @@ -771,7 +861,7 @@ "\"locked\"" ] }, - "232": { + "225": { "op": "bytec_3 // \"generic\"", "defined_out": [ "\"burned\"", @@ -784,7 +874,7 @@ "\"generic\"" ] }, - "233": { + "226": { "op": "frame_dig -1", "defined_out": [ "\"burned\"", @@ -799,15 +889,15 @@ "label#0 (copy)" ] }, - "235": { + "228": { "op": "match set_not_circulating_address_switch_case_0@1 set_not_circulating_address_switch_case_1@2 set_not_circulating_address_switch_case_2@3", "stack_out": [] }, - "243": { + "236": { "error": "Invalid Label", "op": "err // Invalid Label" }, - "244": { + "237": { "block": "set_not_circulating_address_switch_case_2@3", "stack_in": [], "op": "bytec_3 // \"generic\"", @@ -818,7 +908,7 @@ "\"generic\"" ] }, - "245": { + "238": { "op": "frame_dig -2", "defined_out": [ "\"generic\"", @@ -829,15 +919,15 @@ "address#0 (copy)" ] }, - "247": { + "240": { "op": "app_global_put", "stack_out": [] }, - "248": { + "241": { "retsub": true, "op": "retsub" }, - "249": { + "242": { "block": "set_not_circulating_address_switch_case_1@2", "stack_in": [], "op": "bytec_2 // \"locked\"", @@ -848,7 +938,7 @@ "\"locked\"" ] }, - "250": { + "243": { "op": "frame_dig -2", "defined_out": [ "\"locked\"", @@ -859,15 +949,15 @@ "address#0 (copy)" ] }, - "252": { + "245": { "op": "app_global_put", "stack_out": [] }, - "253": { + "246": { "retsub": true, "op": "retsub" }, - "254": { + "247": { "block": "set_not_circulating_address_switch_case_0@1", "stack_in": [], "op": "bytec_1 // \"burned\"", @@ -878,7 +968,7 @@ "\"burned\"" ] }, - "255": { + "248": { "op": "frame_dig -2", "defined_out": [ "\"burned\"", @@ -889,15 +979,15 @@ "address#0 (copy)" ] }, - "257": { + "250": { "op": "app_global_put", "stack_out": [] }, - "258": { + "251": { "retsub": true, "op": "retsub" }, - "259": { + "252": { "subroutine": "smart_contracts.circulating_supply.contract.CirculatingSupply.arc62_get_circulating_supply", "params": { "asset_id#0": "uint64" @@ -906,13 +996,13 @@ "stack_in": [], "op": "proto 1 1" }, - "262": { + "255": { "op": "pushbytes \"\"", "stack_out": [ "not_circulating_balance_1#0" ] }, - "264": { + "257": { "op": "dupn 2", "stack_out": [ "not_circulating_balance_1#0", @@ -920,7 +1010,7 @@ "reserve_balance#0" ] }, - "266": { + "259": { "op": "intc_0 // 0", "defined_out": [ "0" @@ -932,7 +1022,7 @@ "0" ] }, - "267": { + "260": { "op": "bytec_1 // \"burned\"", "defined_out": [ "\"burned\"", @@ -946,7 +1036,7 @@ "\"burned\"" ] }, - "268": { + "261": { "op": "app_global_get_ex", "defined_out": [ "maybe_exists%0#0", @@ -960,31 +1050,31 @@ "maybe_exists%0#0" ] }, - "269": { - "op": "swap", + "262": { + "error": "check self.not_circulating_label_1 exists", + "op": "assert // check self.not_circulating_label_1 exists", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", - "maybe_exists%0#0", "not_circulating_1#0" ] }, - "270": { - "op": "dup", + "263": { + "op": "intc_0 // 0", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", - "maybe_exists%0#0", "not_circulating_1#0", - "not_circulating_1#0 (copy)" + "0" ] }, - "271": { - "op": "uncover 2", + "264": { + "op": "bytec_2 // \"locked\"", "defined_out": [ - "maybe_exists%0#0", + "\"locked\"", + "0", "not_circulating_1#0" ], "stack_out": [ @@ -992,107 +1082,136 @@ "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", - "not_circulating_1#0", - "maybe_exists%0#0" + "0", + "\"locked\"" ] }, - "273": { - "error": "check self.not_circulating_label_1 exists", - "op": "assert // check self.not_circulating_label_1 exists", + "265": { + "op": "app_global_get_ex", + "defined_out": [ + "maybe_exists%1#0", + "not_circulating_1#0", + "not_circulating_2#0" + ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", - "not_circulating_1#0" + "not_circulating_2#0", + "maybe_exists%1#0" ] }, - "274": { - "op": "len", - "defined_out": [ + "266": { + "error": "check self.not_circulating_label_2 exists", + "op": "assert // check self.not_circulating_label_2 exists", + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", "not_circulating_1#0", - "tmp%0#0" - ], + "not_circulating_2#0" + ] + }, + "267": { + "op": "intc_0 // 0", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", - "tmp%0#0" + "not_circulating_2#0", + "0" ] }, - "275": { - "op": "intc_2 // 32", + "268": { + "op": "bytec_3 // \"generic\"", "defined_out": [ - "32", + "\"generic\"", + "0", "not_circulating_1#0", - "tmp%0#0" + "not_circulating_2#0" ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", - "tmp%0#0", - "32" + "not_circulating_2#0", + "0", + "\"generic\"" ] }, - "276": { - "op": "==", + "269": { + "op": "app_global_get_ex", "defined_out": [ + "maybe_exists%2#0", "not_circulating_1#0", - "tmp%1#0" + "not_circulating_2#0", + "not_circulating_3#0" ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", - "tmp%1#0" + "not_circulating_2#0", + "not_circulating_3#0", + "maybe_exists%2#0" ] }, - "277": { - "error": "Address length is 32 bytes", - "op": "assert // Address length is 32 bytes", + "270": { + "error": "check self.not_circulating_label_3 exists", + "op": "assert // check self.not_circulating_label_3 exists", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", - "not_circulating_1#0" + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0" ] }, - "278": { + "271": { "op": "intc_0 // 0", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", "0" ] }, - "279": { - "op": "bytec_2 // \"locked\"", + "272": { + "op": "bytec_0 // \"asset_id\"", "defined_out": [ - "\"locked\"", + "\"asset_id\"", "0", - "not_circulating_1#0" + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0" ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", "0", - "\"locked\"" + "\"asset_id\"" ] }, - "280": { + "273": { "op": "app_global_get_ex", "defined_out": [ - "maybe_exists%1#0", + "maybe_exists%3#0", + "maybe_value%3#0", "not_circulating_1#0", - "not_circulating_2#0" + "not_circulating_2#0", + "not_circulating_3#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1100,38 +1219,32 @@ "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "maybe_exists%1#0" - ] - }, - "281": { - "op": "swap", - "stack_out": [ - "not_circulating_balance_1#0", - "not_circulating_balance_2#0", - "reserve_balance#0", - "not_circulating_1#0", - "maybe_exists%1#0", - "not_circulating_2#0" + "not_circulating_3#0", + "maybe_value%3#0", + "maybe_exists%3#0" ] }, - "282": { - "op": "dup", + "274": { + "error": "check self.asset_id exists", + "op": "assert // check self.asset_id exists", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", - "maybe_exists%1#0", "not_circulating_2#0", - "not_circulating_2#0 (copy)" + "not_circulating_3#0", + "maybe_value%3#0" ] }, - "283": { - "op": "uncover 2", + "275": { + "op": "frame_dig -1", "defined_out": [ - "maybe_exists%1#0", + "asset_id#0 (copy)", + "maybe_value%3#0", "not_circulating_1#0", - "not_circulating_2#0" + "not_circulating_2#0", + "not_circulating_3#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1139,56 +1252,61 @@ "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_2#0", - "maybe_exists%1#0" + "not_circulating_3#0", + "maybe_value%3#0", + "asset_id#0 (copy)" ] }, - "285": { - "error": "check self.not_circulating_label_2 exists", - "op": "assert // check self.not_circulating_label_2 exists", + "277": { + "op": "==", + "defined_out": [ + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", + "tmp%6#0" + ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_2#0" + "not_circulating_3#0", + "tmp%6#0" ] }, - "286": { - "op": "len", - "defined_out": [ - "not_circulating_1#0", - "not_circulating_2#0", - "tmp%2#0" - ], + "278": { + "error": "Invalid ASA ID", + "op": "assert // Invalid ASA ID", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "tmp%2#0" + "not_circulating_3#0" ] }, - "287": { - "op": "intc_2 // 32", + "279": { + "op": "frame_dig -1", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "tmp%2#0", - "32" + "not_circulating_3#0", + "asset_id#0 (copy)" ] }, - "288": { - "op": "==", + "281": { + "op": "asset_params_get AssetReserve", "defined_out": [ + "check%0#0", "not_circulating_1#0", "not_circulating_2#0", - "tmp%3#0" + "not_circulating_3#0", + "value%0#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1196,38 +1314,32 @@ "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "tmp%3#0" - ] - }, - "289": { - "error": "Address length is 32 bytes", - "op": "assert // Address length is 32 bytes", - "stack_out": [ - "not_circulating_balance_1#0", - "not_circulating_balance_2#0", - "reserve_balance#0", - "not_circulating_1#0", - "not_circulating_2#0" + "not_circulating_3#0", + "value%0#0", + "check%0#0" ] }, - "290": { - "op": "intc_0 // 0", + "283": { + "error": "asset exists", + "op": "assert // asset exists", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "0" + "not_circulating_3#0", + "value%0#0" ] }, - "291": { - "op": "bytec_3 // \"generic\"", + "284": { + "op": "global ZeroAddress", "defined_out": [ - "\"generic\"", - "0", "not_circulating_1#0", - "not_circulating_2#0" + "not_circulating_2#0", + "not_circulating_3#0", + "tmp%7#0", + "value%0#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1235,17 +1347,18 @@ "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "0", - "\"generic\"" + "not_circulating_3#0", + "value%0#0", + "tmp%7#0" ] }, - "292": { - "op": "app_global_get_ex", + "286": { + "op": "==", "defined_out": [ - "maybe_exists%2#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0" + "not_circulating_3#0", + "tmp%8#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1254,41 +1367,40 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "maybe_exists%2#0" + "tmp%8#0" ] }, - "293": { - "op": "swap", + "287": { + "op": "bnz arc62_get_circulating_supply_ternary_true@2", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "maybe_exists%2#0", "not_circulating_3#0" ] }, - "294": { - "op": "dup", + "290": { + "op": "frame_dig -1", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "maybe_exists%2#0", "not_circulating_3#0", - "not_circulating_3#0 (copy)" + "asset_id#0 (copy)" ] }, - "295": { - "op": "uncover 2", + "292": { + "op": "asset_params_get AssetReserve", "defined_out": [ - "maybe_exists%2#0", + "check%1#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0" + "not_circulating_3#0", + "value%1#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1297,13 +1409,25 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", + "value%1#0", + "check%1#0" + ] + }, + "294": { + "error": "asset exists", + "op": "assert // asset exists", + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", "not_circulating_3#0", - "maybe_exists%2#0" + "value%1#0" ] }, - "297": { - "error": "check self.not_circulating_label_3 exists", - "op": "assert // check self.not_circulating_label_3 exists", + "295": { + "op": "frame_dig -1", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1311,16 +1435,18 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "not_circulating_3#0" + "value%1#0", + "asset_id#0 (copy)" ] }, - "298": { - "op": "len", + "297": { + "op": "asset_holding_get AssetBalance", "defined_out": [ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%4#0" + "tmp%10#0", + "tmp%9#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1329,11 +1455,12 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%4#0" + "tmp%9#0", + "tmp%10#0" ] }, "299": { - "op": "intc_2 // 32", + "op": "bury 1", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1341,42 +1468,34 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%4#0", - "32" + "tmp%10#0" ] }, - "300": { - "op": "==", - "defined_out": [ - "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0", - "tmp%5#0" - ], + "301": { + "op": "bnz arc62_get_circulating_supply_ternary_false@3", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0", - "tmp%5#0" + "not_circulating_3#0" ] }, - "301": { - "error": "Address length is 32 bytes", - "op": "assert // Address length is 32 bytes", - "stack_out": [ + "304": { + "block": "arc62_get_circulating_supply_ternary_true@2", + "stack_in": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0" - ] - }, - "302": { + ], "op": "intc_0 // 0", + "defined_out": [ + "reserve_balance#0" + ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1384,17 +1503,13 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "0" + "reserve_balance#0" ] }, - "303": { - "op": "bytec_0 // \"asset_id\"", + "305": { + "op": "frame_bury 2", "defined_out": [ - "\"asset_id\"", - "0", - "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0" + "reserve_balance#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1402,34 +1517,23 @@ "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0", - "0", - "\"asset_id\"" + "not_circulating_3#0" ] }, - "304": { - "op": "app_global_get_ex", - "defined_out": [ - "maybe_exists%3#0", - "maybe_value%3#0", - "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0" - ], - "stack_out": [ + "307": { + "block": "arc62_get_circulating_supply_ternary_merge@4", + "stack_in": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0", - "maybe_value%3#0", - "maybe_exists%3#0" - ] - }, - "305": { - "error": "check self.asset_id exists", - "op": "assert // check self.asset_id exists", + "not_circulating_3#0" + ], + "op": "frame_dig 3", + "defined_out": [ + "not_circulating_1#0" + ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1437,17 +1541,14 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "maybe_value%3#0" + "not_circulating_1#0" ] }, - "306": { - "op": "frame_dig -1", + "309": { + "op": "global ZeroAddress", "defined_out": [ - "asset_id#0 (copy)", - "maybe_value%3#0", "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0" + "tmp%11#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1456,17 +1557,15 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "maybe_value%3#0", - "asset_id#0 (copy)" + "not_circulating_1#0", + "tmp%11#0" ] }, - "308": { + "311": { "op": "==", "defined_out": [ "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0", - "tmp%6#0" + "tmp%12#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1475,12 +1574,11 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%6#0" + "tmp%12#0" ] }, - "309": { - "error": "Invalid ASA ID", - "op": "assert // Invalid ASA ID", + "312": { + "op": "bnz arc62_get_circulating_supply_ternary_true@6", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1490,8 +1588,8 @@ "not_circulating_3#0" ] }, - "310": { - "op": "frame_dig -1", + "315": { + "op": "frame_dig 3", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1499,32 +1597,15 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "asset_id#0 (copy)" + "not_circulating_1#0" ] }, - "312": { - "op": "asset_params_get AssetReserve", + "317": { + "op": "frame_dig -1", "defined_out": [ - "check%0#0", - "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0", - "value%0#0" - ], - "stack_out": [ - "not_circulating_balance_1#0", - "not_circulating_balance_2#0", - "reserve_balance#0", - "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0", - "value%0#0", - "check%0#0" - ] - }, - "314": { - "error": "asset exists", - "op": "assert // asset exists", + "asset_id#0 (copy)", + "not_circulating_1#0" + ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1532,17 +1613,16 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "value%0#0" + "not_circulating_1#0", + "asset_id#0 (copy)" ] }, - "315": { - "op": "global ZeroAddress", + "319": { + "op": "asset_holding_get AssetBalance", "defined_out": [ "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0", - "tmp%7#0", - "value%0#0" + "tmp%13#0", + "tmp%14#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1551,18 +1631,12 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "value%0#0", - "tmp%7#0" + "tmp%13#0", + "tmp%14#0" ] }, - "317": { - "op": "==", - "defined_out": [ - "not_circulating_1#0", - "not_circulating_2#0", - "not_circulating_3#0", - "tmp%8#0" - ], + "321": { + "op": "bury 1", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1570,11 +1644,11 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%8#0" + "tmp%14#0" ] }, - "318": { - "op": "bnz arc62_get_circulating_supply_ternary_true@2", + "323": { + "op": "bnz arc62_get_circulating_supply_ternary_false@7", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1584,30 +1658,8 @@ "not_circulating_3#0" ] }, - "321": { - "op": "frame_dig -1" - }, - "323": { - "op": "asset_params_get AssetReserve" - }, - "325": { - "error": "asset exists", - "op": "assert // asset exists" - }, "326": { - "op": "frame_dig -1" - }, - "328": { - "op": "asset_holding_get AssetBalance" - }, - "330": { - "op": "bury 1" - }, - "332": { - "op": "bnz arc62_get_circulating_supply_ternary_false@3" - }, - "335": { - "block": "arc62_get_circulating_supply_ternary_true@2", + "block": "arc62_get_circulating_supply_ternary_true@6", "stack_in": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1618,7 +1670,7 @@ ], "op": "intc_0 // 0", "defined_out": [ - "reserve_balance#0" + "not_circulating_balance_1#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1627,13 +1679,13 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "reserve_balance#0" + "not_circulating_balance_1#0" ] }, - "336": { - "op": "frame_bury 2", + "327": { + "op": "frame_bury 0", "defined_out": [ - "reserve_balance#0" + "not_circulating_balance_1#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1644,8 +1696,8 @@ "not_circulating_3#0" ] }, - "338": { - "block": "arc62_get_circulating_supply_ternary_merge@4", + "329": { + "block": "arc62_get_circulating_supply_ternary_merge@8", "stack_in": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1654,13 +1706,9 @@ "not_circulating_2#0", "not_circulating_3#0" ], - "op": "frame_dig 3" - }, - "340": { - "op": "global ZeroAddress", + "op": "frame_dig 4", "defined_out": [ - "not_circulating_1#0", - "tmp%11#0" + "not_circulating_2#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1669,15 +1717,14 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "not_circulating_1#0", - "tmp%11#0" + "not_circulating_2#0" ] }, - "342": { - "op": "==", + "331": { + "op": "global ZeroAddress", "defined_out": [ - "not_circulating_1#0", - "tmp%12#0" + "not_circulating_2#0", + "tmp%15#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1686,49 +1733,39 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%12#0" + "not_circulating_2#0", + "tmp%15#0" ] }, - "343": { - "op": "bnz arc62_get_circulating_supply_ternary_true@6", + "333": { + "op": "==", + "defined_out": [ + "not_circulating_2#0", + "tmp%16#0" + ], "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0" + "not_circulating_3#0", + "tmp%16#0" ] }, - "346": { - "op": "frame_dig 3" - }, - "348": { - "op": "frame_dig -1" - }, - "350": { - "op": "asset_holding_get AssetBalance" - }, - "352": { - "op": "bury 1" - }, - "354": { - "op": "bnz arc62_get_circulating_supply_ternary_false@7" - }, - "357": { - "block": "arc62_get_circulating_supply_ternary_true@6", - "stack_in": [ + "334": { + "op": "bnz arc62_get_circulating_supply_ternary_true@10", + "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0" - ], - "op": "intc_0 // 0", - "defined_out": [ - "not_circulating_balance_1#0" - ], + ] + }, + "337": { + "op": "frame_dig 4", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1736,13 +1773,14 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "not_circulating_balance_1#0" + "not_circulating_2#0" ] }, - "358": { - "op": "frame_bury 0", + "339": { + "op": "frame_dig -1", "defined_out": [ - "not_circulating_balance_1#0" + "asset_id#0 (copy)", + "not_circulating_2#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1750,26 +1788,17 @@ "reserve_balance#0", "not_circulating_1#0", "not_circulating_2#0", - "not_circulating_3#0" - ] - }, - "360": { - "block": "arc62_get_circulating_supply_ternary_merge@8", - "stack_in": [ - "not_circulating_balance_1#0", - "not_circulating_balance_2#0", - "reserve_balance#0", - "not_circulating_1#0", + "not_circulating_3#0", "not_circulating_2#0", - "not_circulating_3#0" - ], - "op": "frame_dig 4" + "asset_id#0 (copy)" + ] }, - "362": { - "op": "global ZeroAddress", + "341": { + "op": "asset_holding_get AssetBalance", "defined_out": [ "not_circulating_2#0", - "tmp%15#0" + "tmp%17#0", + "tmp%18#0" ], "stack_out": [ "not_circulating_balance_1#0", @@ -1778,16 +1807,12 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "not_circulating_2#0", - "tmp%15#0" + "tmp%17#0", + "tmp%18#0" ] }, - "364": { - "op": "==", - "defined_out": [ - "not_circulating_2#0", - "tmp%16#0" - ], + "343": { + "op": "bury 1", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1795,11 +1820,11 @@ "not_circulating_1#0", "not_circulating_2#0", "not_circulating_3#0", - "tmp%16#0" + "tmp%18#0" ] }, - "365": { - "op": "bnz arc62_get_circulating_supply_ternary_true@10", + "345": { + "op": "bnz arc62_get_circulating_supply_ternary_false@11", "stack_out": [ "not_circulating_balance_1#0", "not_circulating_balance_2#0", @@ -1809,22 +1834,7 @@ "not_circulating_3#0" ] }, - "368": { - "op": "frame_dig 4" - }, - "370": { - "op": "frame_dig -1" - }, - "372": { - "op": "asset_holding_get AssetBalance" - }, - "374": { - "op": "bury 1" - }, - "376": { - "op": "bnz arc62_get_circulating_supply_ternary_false@11" - }, - "379": { + "348": { "block": "arc62_get_circulating_supply_ternary_true@10", "stack_in": [ "not_circulating_balance_1#0", @@ -1848,7 +1858,7 @@ "not_circulating_balance_2#0" ] }, - "380": { + "349": { "op": "frame_bury 1", "defined_out": [ "not_circulating_balance_2#0" @@ -1862,7 +1872,7 @@ "not_circulating_3#0" ] }, - "382": { + "351": { "block": "arc62_get_circulating_supply_ternary_merge@12", "stack_in": [ "not_circulating_balance_1#0", @@ -1872,9 +1882,21 @@ "not_circulating_2#0", "not_circulating_3#0" ], - "op": "frame_dig 5" + "op": "frame_dig 5", + "defined_out": [ + "not_circulating_3#0" + ], + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", + "not_circulating_3#0" + ] }, - "384": { + "353": { "op": "global ZeroAddress", "defined_out": [ "not_circulating_3#0", @@ -1891,7 +1913,7 @@ "tmp%19#0" ] }, - "386": { + "355": { "op": "==", "defined_out": [ "not_circulating_3#0", @@ -1907,7 +1929,7 @@ "tmp%20#0" ] }, - "387": { + "356": { "op": "bnz arc62_get_circulating_supply_ternary_true@14", "stack_out": [ "not_circulating_balance_1#0", @@ -1918,22 +1940,77 @@ "not_circulating_3#0" ] }, - "390": { - "op": "frame_dig 5" + "359": { + "op": "frame_dig 5", + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", + "not_circulating_3#0" + ] }, - "392": { - "op": "frame_dig -1" + "361": { + "op": "frame_dig -1", + "defined_out": [ + "asset_id#0 (copy)", + "not_circulating_3#0" + ], + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", + "not_circulating_3#0", + "asset_id#0 (copy)" + ] }, - "394": { - "op": "asset_holding_get AssetBalance" + "363": { + "op": "asset_holding_get AssetBalance", + "defined_out": [ + "not_circulating_3#0", + "tmp%21#0", + "tmp%22#0" + ], + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", + "tmp%21#0", + "tmp%22#0" + ] }, - "396": { - "op": "bury 1" + "365": { + "op": "bury 1", + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0", + "tmp%22#0" + ] }, - "398": { - "op": "bnz arc62_get_circulating_supply_ternary_false@15" + "367": { + "op": "bnz arc62_get_circulating_supply_ternary_false@15", + "stack_out": [ + "not_circulating_balance_1#0", + "not_circulating_balance_2#0", + "reserve_balance#0", + "not_circulating_1#0", + "not_circulating_2#0", + "not_circulating_3#0" + ] }, - "401": { + "370": { "block": "arc62_get_circulating_supply_ternary_true@14", "stack_in": [ "not_circulating_balance_1#0", @@ -1957,7 +2034,7 @@ "not_circulating_balance_3#0" ] }, - "402": { + "371": { "block": "arc62_get_circulating_supply_ternary_merge@16", "stack_in": [ "not_circulating_balance_1#0", @@ -1983,7 +2060,7 @@ "asset_id#0 (copy)" ] }, - "404": { + "373": { "op": "asset_params_get AssetTotal", "defined_out": [ "check%7#0", @@ -2001,7 +2078,7 @@ "check%7#0" ] }, - "406": { + "375": { "error": "asset exists", "op": "assert // asset exists", "stack_out": [ @@ -2015,7 +2092,7 @@ "value%7#0" ] }, - "407": { + "376": { "op": "frame_dig 2", "defined_out": [ "reserve_balance#0", @@ -2033,7 +2110,7 @@ "reserve_balance#0" ] }, - "409": { + "378": { "op": "-", "defined_out": [ "reserve_balance#0", @@ -2050,7 +2127,7 @@ "tmp%23#0" ] }, - "410": { + "379": { "op": "frame_dig 0", "defined_out": [ "not_circulating_balance_1#0", @@ -2069,7 +2146,7 @@ "not_circulating_balance_1#0" ] }, - "412": { + "381": { "op": "-", "defined_out": [ "not_circulating_balance_1#0", @@ -2087,7 +2164,7 @@ "tmp%24#0" ] }, - "413": { + "382": { "op": "frame_dig 1", "defined_out": [ "not_circulating_balance_1#0", @@ -2107,7 +2184,7 @@ "not_circulating_balance_2#0" ] }, - "415": { + "384": { "op": "-", "defined_out": [ "not_circulating_balance_1#0", @@ -2126,7 +2203,7 @@ "tmp%25#0" ] }, - "416": { + "385": { "op": "swap", "defined_out": [ "not_circulating_balance_1#0", @@ -2146,7 +2223,7 @@ "not_circulating_balance_3#0" ] }, - "417": { + "386": { "op": "-", "defined_out": [ "not_circulating_balance_1#0", @@ -2164,14 +2241,14 @@ "tmp%26#0" ] }, - "418": { + "387": { "op": "frame_bury 0" }, - "420": { + "389": { "retsub": true, "op": "retsub" }, - "421": { + "390": { "block": "arc62_get_circulating_supply_ternary_false@15", "stack_in": [ "not_circulating_balance_1#0", @@ -2195,7 +2272,7 @@ "not_circulating_3#0" ] }, - "423": { + "392": { "op": "frame_dig -1", "defined_out": [ "asset_id#0 (copy)", @@ -2212,7 +2289,7 @@ "asset_id#0 (copy)" ] }, - "425": { + "394": { "op": "asset_holding_get AssetBalance", "defined_out": [ "check%6#0", @@ -2230,7 +2307,7 @@ "check%6#0" ] }, - "427": { + "396": { "error": "account opted into asset", "op": "assert // account opted into asset", "defined_out": [ @@ -2247,10 +2324,10 @@ "not_circulating_balance_3#0" ] }, - "428": { + "397": { "op": "b arc62_get_circulating_supply_ternary_merge@16" }, - "431": { + "400": { "block": "arc62_get_circulating_supply_ternary_false@11", "stack_in": [ "not_circulating_balance_1#0", @@ -2274,7 +2351,7 @@ "not_circulating_2#0" ] }, - "433": { + "402": { "op": "frame_dig -1", "defined_out": [ "asset_id#0 (copy)", @@ -2291,7 +2368,7 @@ "asset_id#0 (copy)" ] }, - "435": { + "404": { "op": "asset_holding_get AssetBalance", "defined_out": [ "check%5#0", @@ -2309,7 +2386,7 @@ "check%5#0" ] }, - "437": { + "406": { "error": "account opted into asset", "op": "assert // account opted into asset", "defined_out": [ @@ -2326,7 +2403,7 @@ "not_circulating_balance_2#0" ] }, - "438": { + "407": { "op": "frame_bury 1", "defined_out": [ "not_circulating_2#0", @@ -2341,10 +2418,10 @@ "not_circulating_3#0" ] }, - "440": { + "409": { "op": "b arc62_get_circulating_supply_ternary_merge@12" }, - "443": { + "412": { "block": "arc62_get_circulating_supply_ternary_false@7", "stack_in": [ "not_circulating_balance_1#0", @@ -2368,7 +2445,7 @@ "not_circulating_1#0" ] }, - "445": { + "414": { "op": "frame_dig -1", "defined_out": [ "asset_id#0 (copy)", @@ -2385,7 +2462,7 @@ "asset_id#0 (copy)" ] }, - "447": { + "416": { "op": "asset_holding_get AssetBalance", "defined_out": [ "check%4#0", @@ -2403,7 +2480,7 @@ "check%4#0" ] }, - "449": { + "418": { "error": "account opted into asset", "op": "assert // account opted into asset", "defined_out": [ @@ -2420,7 +2497,7 @@ "not_circulating_balance_1#0" ] }, - "450": { + "419": { "op": "frame_bury 0", "defined_out": [ "not_circulating_1#0", @@ -2435,10 +2512,10 @@ "not_circulating_3#0" ] }, - "452": { + "421": { "op": "b arc62_get_circulating_supply_ternary_merge@8" }, - "455": { + "424": { "block": "arc62_get_circulating_supply_ternary_false@3", "stack_in": [ "not_circulating_balance_1#0", @@ -2462,7 +2539,7 @@ "asset_id#0 (copy)" ] }, - "457": { + "426": { "op": "asset_params_get AssetReserve", "defined_out": [ "check%2#0", @@ -2479,7 +2556,7 @@ "check%2#0" ] }, - "459": { + "428": { "error": "asset exists", "op": "assert // asset exists", "stack_out": [ @@ -2492,7 +2569,7 @@ "value%2#0" ] }, - "460": { + "429": { "op": "frame_dig -1", "stack_out": [ "not_circulating_balance_1#0", @@ -2505,7 +2582,7 @@ "asset_id#0 (copy)" ] }, - "462": { + "431": { "op": "asset_holding_get AssetBalance", "defined_out": [ "check%3#0", @@ -2522,7 +2599,7 @@ "check%3#0" ] }, - "464": { + "433": { "error": "account opted into asset", "op": "assert // account opted into asset", "defined_out": [ @@ -2538,7 +2615,7 @@ "reserve_balance#0" ] }, - "465": { + "434": { "op": "frame_bury 2", "defined_out": [ "reserve_balance#0" @@ -2552,7 +2629,7 @@ "not_circulating_3#0" ] }, - "467": { + "436": { "op": "b arc62_get_circulating_supply_ternary_merge@4" } } diff --git a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.teal b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.teal index 5c12ab668..5c53d552f 100644 --- a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.teal +++ b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.approval.teal @@ -3,7 +3,7 @@ // smart_contracts.circulating_supply.contract.CirculatingSupply.__algopy_entrypoint_with_init() -> uint64: main: - intcblock 0 1 32 + intcblock 0 1 bytecblock "asset_id" "burned" "locked" "generic" txn ApplicationID bnz main_after_if_else@2 @@ -192,11 +192,6 @@ set_not_circulating_address: // smart_contracts/circulating_supply/contract.py:62 // assert Account(address.bytes).is_opted_in(asset), err.NOT_OPTED_IN frame_dig -2 - len - intc_2 // 32 - == - assert // Address length is 32 bytes - frame_dig -2 swap asset_holding_get AssetBalance bury 1 @@ -265,40 +260,19 @@ arc62_get_circulating_supply: intc_0 // 0 bytec_1 // "burned" app_global_get_ex - swap - dup - uncover 2 assert // check self.not_circulating_label_1 exists - len - intc_2 // 32 - == - assert // Address length is 32 bytes // smart_contracts/circulating_supply/contract.py:87 // not_circulating_2 = Account(self.not_circulating_label_2.value.bytes) intc_0 // 0 bytec_2 // "locked" app_global_get_ex - swap - dup - uncover 2 assert // check self.not_circulating_label_2 exists - len - intc_2 // 32 - == - assert // Address length is 32 bytes // smart_contracts/circulating_supply/contract.py:88 // not_circulating_3 = Account(self.not_circulating_label_3.value.bytes) intc_0 // 0 bytec_3 // "generic" app_global_get_ex - swap - dup - uncover 2 assert // check self.not_circulating_label_3 exists - len - intc_2 // 32 - == - assert // Address length is 32 bytes // smart_contracts/circulating_supply/contract.py:89-90 // # Preconditions // assert asset_id == self.asset_id, err.INVALID_ASSET_ID diff --git a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.arc56.json b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.arc56.json index f545eab69..45cd17dbd 100644 --- a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.arc56.json +++ b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/CirculatingSupply.arc56.json @@ -138,103 +138,94 @@ "sourceInfo": [ { "pc": [ - 221, - 277, - 289, - 301 - ], - "errorMessage": "Address length is 32 bytes" - }, - { - "pc": [ - 309 + 278 ], "errorMessage": "Invalid ASA ID" }, { "pc": [ - 243 + 236 ], "errorMessage": "Invalid Label" }, { "pc": [ - 229 + 222 ], "errorMessage": "Not Opted-In" }, { "pc": [ - 97, - 123, - 144 + 96, + 122, + 143 ], "errorMessage": "OnCompletion is not NoOp" }, { "pc": [ - 190, - 215 + 189, + 214 ], "errorMessage": "Unauthorized" }, { "pc": [ - 427, - 437, - 449, - 464 + 396, + 406, + 418, + 433 ], "errorMessage": "account opted into asset" }, { "pc": [ - 177, - 213, - 314, - 325, - 406, - 459 + 176, + 212, + 283, + 294, + 375, + 428 ], "errorMessage": "asset exists" }, { "pc": [ - 165 + 164 ], "errorMessage": "can only call when creating" }, { "pc": [ - 100, - 126, - 147 + 99, + 125, + 146 ], "errorMessage": "can only call when not creating" }, { "pc": [ - 185, - 206, - 305 + 184, + 205, + 274 ], "errorMessage": "check self.asset_id exists" }, { "pc": [ - 273 + 262 ], "errorMessage": "check self.not_circulating_label_1 exists" }, { "pc": [ - 285 + 266 ], "errorMessage": "check self.not_circulating_label_2 exists" }, { "pc": [ - 297 + 270 ], "errorMessage": "check self.not_circulating_label_3 exists" } @@ -247,19 +238,19 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBzbWFydF9jb250cmFjdHMuY2lyY3VsYXRpbmdfc3VwcGx5LmNvbnRyYWN0LkNpcmN1bGF0aW5nU3VwcGx5Ll9fYWxnb3B5X2VudHJ5cG9pbnRfd2l0aF9pbml0KCkgLT4gdWludDY0OgptYWluOgogICAgaW50Y2Jsb2NrIDAgMSAzMgogICAgYnl0ZWNibG9jayAiYXNzZXRfaWQiICJidXJuZWQiICJsb2NrZWQiICJnZW5lcmljIgogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyNC0yNQogICAgLy8gIyBHbG9iYWwgU3RhdGUKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBVSW50NjQoKQogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBpbnRjXzAgLy8gMAogICAgYXBwX2dsb2JhbF9wdXQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjcKICAgIC8vIEFkZHJlc3MoKSwga2V5PWNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMQogICAgYnl0ZWNfMSAvLyAiYnVybmVkIgogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjI2LTI4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8xID0gR2xvYmFsU3RhdGUoCiAgICAvLyAgICAgQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8xCiAgICAvLyApCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozMAogICAgLy8gQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yCiAgICBieXRlY18yIC8vICJsb2NrZWQiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjktMzEKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzIKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjMzCiAgICAvLyBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MzItMzQKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CgptYWluX2FmdGVyX2lmX2Vsc2VAMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9iYXJlX3JvdXRpbmdAOAogICAgcHVzaGJ5dGVzcyAweDcwOWI4MGE4IDB4MGI2MmM3MjggMHg1Y2MyYzUzNSAvLyBtZXRob2QgInNldF9hc3NldCh1aW50NjQpdm9pZCIsIG1ldGhvZCAic2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKGFkZHJlc3Msc3RyaW5nKXZvaWQiLCBtZXRob2QgImFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHkodWludDY0KXVpbnQ2NCIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIG1hdGNoIG1haW5fc2V0X2Fzc2V0X3JvdXRlQDUgbWFpbl9zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfcm91dGVANiBtYWluX2FyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfcm91dGVANwoKbWFpbl9hZnRlcl9pZl9lbHNlQDEwOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIGludGNfMCAvLyAwCiAgICByZXR1cm4KCm1haW5fYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV9yb3V0ZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjIwCiAgICAvLyBjbGFzcyBDaXJjdWxhdGluZ1N1cHBseShBUkM0Q29udHJhY3QpOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgYnRvaQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgY2FsbHN1YiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5CiAgICBpdG9iCiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCm1haW5fc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3JvdXRlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIGFzc2VydCAvLyBPbkNvbXBsZXRpb24gaXMgbm90IE5vT3AKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIG5vdCBjcmVhdGluZwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDIKICAgIGV4dHJhY3QgMiAwCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX3NldF9hc3NldF9yb3V0ZUA1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNgogICAgLy8gQGFiaW1ldGhvZCgpCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBidG9pCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjM2CiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X2Fzc2V0CiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX2JhcmVfcm91dGluZ0A4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4biBPbkNvbXBsZXRpb24KICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMTAKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIGNyZWF0aW5nCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfYXNzZXQoYXNzZXRfaWQ6IHVpbnQ2NCkgLT4gdm9pZDoKc2V0X2Fzc2V0OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNi0zNwogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X2Fzc2V0KHNlbGYsIGFzc2V0X2lkOiBVSW50NjQpIC0+IE5vbmU6CiAgICBwcm90byAxIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NDUtNDYKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciBhbmQgbm90IHNlbGYuYXNzZXRfaWQsIGVyci5VTkFVVEhPUklaRUQKICAgIHR4biBTZW5kZXIKICAgIGZyYW1lX2RpZyAtMQogICAgYXNzZXRfcGFyYW1zX2dldCBBc3NldE1hbmFnZXIKICAgIGFzc2VydCAvLyBhc3NldCBleGlzdHMKICAgID09CiAgICBieiBzZXRfYXNzZXRfYm9vbF9mYWxzZUAzCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYuYXNzZXRfaWQgZXhpc3RzCiAgICBibnogc2V0X2Fzc2V0X2Jvb2xfZmFsc2VAMwogICAgaW50Y18xIC8vIDEKCnNldF9hc3NldF9ib29sX21lcmdlQDQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ1LTQ2CiAgICAvLyAjIFByZWNvbmRpdGlvbnMKICAgIC8vIGFzc2VydCBUeG4uc2VuZGVyID09IGFzc2V0Lm1hbmFnZXIgYW5kIG5vdCBzZWxmLmFzc2V0X2lkLCBlcnIuVU5BVVRIT1JJWkVECiAgICBhc3NlcnQgLy8gVW5hdXRob3JpemVkCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ3LTQ4CiAgICAvLyAjIEVmZmVjdHMKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBhc3NldF9pZAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBmcmFtZV9kaWcgLTEKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9hc3NldF9ib29sX2ZhbHNlQDM6CiAgICBpbnRjXzAgLy8gMAogICAgYiBzZXRfYXNzZXRfYm9vbF9tZXJnZUA0CgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3MoYWRkcmVzczogYnl0ZXMsIGxhYmVsOiBieXRlcykgLT4gdm9pZDoKc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo1MC01MQogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKHNlbGYsIGFkZHJlc3M6IEFkZHJlc3MsIGxhYmVsOiBTdHJpbmcpIC0+IE5vbmU6CiAgICBwcm90byAyIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NTkKICAgIC8vIGFzc2V0ID0gQXNzZXQoc2VsZi5hc3NldF9pZCkKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjAtNjEKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciwgZXJyLlVOQVVUSE9SSVpFRAogICAgdHhuIFNlbmRlcgogICAgZGlnIDEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRNYW5hZ2VyCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICA9PQogICAgYXNzZXJ0IC8vIFVuYXV0aG9yaXplZAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2MgogICAgLy8gYXNzZXJ0IEFjY291bnQoYWRkcmVzcy5ieXRlcykuaXNfb3B0ZWRfaW4oYXNzZXQpLCBlcnIuTk9UX09QVEVEX0lOCiAgICBmcmFtZV9kaWcgLTIKICAgIGxlbgogICAgaW50Y18yIC8vIDMyCiAgICA9PQogICAgYXNzZXJ0IC8vIEFkZHJlc3MgbGVuZ3RoIGlzIDMyIGJ5dGVzCiAgICBmcmFtZV9kaWcgLTIKICAgIHN3YXAKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBhc3NlcnQgLy8gTm90IE9wdGVkLUluCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY1CiAgICAvLyBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjcKICAgIC8vIGNhc2UgY2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yOgogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2OQogICAgLy8gY2FzZSBjZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzM6CiAgICBieXRlY18zIC8vICJnZW5lcmljIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2My03MgogICAgLy8gIyBFZmZlY3RzCiAgICAvLyBtYXRjaCBsYWJlbDoKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMjoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMi52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMzoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIF86CiAgICAvLyAgICAgICAgIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGZyYW1lX2RpZyAtMQogICAgbWF0Y2ggc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3N3aXRjaF9jYXNlXzBAMSBzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMUAyIHNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8yQDMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NzIKICAgIC8vIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGVyciAvLyBJbnZhbGlkIExhYmVsCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMkAzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3MAogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBmcmFtZV9kaWcgLTIKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8xQDI6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8yLnZhbHVlID0gYWRkcmVzcwogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgZnJhbWVfZGlnIC0yCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgcmV0c3ViCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMEAxOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2NgogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIGZyYW1lX2RpZyAtMgogICAgYXBwX2dsb2JhbF9wdXQKICAgIHJldHN1YgoKCi8vIHNtYXJ0X2NvbnRyYWN0cy5jaXJjdWxhdGluZ19zdXBwbHkuY29udHJhY3QuQ2lyY3VsYXRpbmdTdXBwbHkuYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShhc3NldF9pZDogdWludDY0KSAtPiB1aW50NjQ6CmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHk6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojc0LTc1CiAgICAvLyBAYWJpbWV0aG9kKHJlYWRvbmx5PVRydWUpCiAgICAvLyBkZWYgYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShzZWxmLCBhc3NldF9pZDogVUludDY0KSAtPiBVSW50NjQ6CiAgICBwcm90byAxIDEKICAgIHB1c2hieXRlcyAiIgogICAgZHVwbiAyCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg2CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMSA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18xIC8vICJidXJuZWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgc3dhcAogICAgZHVwCiAgICB1bmNvdmVyIDIKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8xIGV4aXN0cwogICAgbGVuCiAgICBpbnRjXzIgLy8gMzIKICAgID09CiAgICBhc3NlcnQgLy8gQWRkcmVzcyBsZW5ndGggaXMgMzIgYnl0ZXMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6ODcKICAgIC8vIG5vdF9jaXJjdWxhdGluZ18yID0gQWNjb3VudChzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8yLnZhbHVlLmJ5dGVzKQogICAgaW50Y18wIC8vIDAKICAgIGJ5dGVjXzIgLy8gImxvY2tlZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBzd2FwCiAgICBkdXAKICAgIHVuY292ZXIgMgogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgZXhpc3RzCiAgICBsZW4KICAgIGludGNfMiAvLyAzMgogICAgPT0KICAgIGFzc2VydCAvLyBBZGRyZXNzIGxlbmd0aCBpcyAzMiBieXRlcwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo4OAogICAgLy8gbm90X2NpcmN1bGF0aW5nXzMgPSBBY2NvdW50KHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMudmFsdWUuYnl0ZXMpCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMyAvLyAiZ2VuZXJpYyIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBzd2FwCiAgICBkdXAKICAgIHVuY292ZXIgMgogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMgZXhpc3RzCiAgICBsZW4KICAgIGludGNfMiAvLyAzMgogICAgPT0KICAgIGFzc2VydCAvLyBBZGRyZXNzIGxlbmd0aCBpcyAzMiBieXRlcwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo4OS05MAogICAgLy8gIyBQcmVjb25kaXRpb25zCiAgICAvLyBhc3NlcnQgYXNzZXRfaWQgPT0gc2VsZi5hc3NldF9pZCwgZXJyLklOVkFMSURfQVNTRVRfSUQKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIGZyYW1lX2RpZyAtMQogICAgPT0KICAgIGFzc2VydCAvLyBJbnZhbGlkIEFTQSBJRAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5NAogICAgLy8gaWYgYXNzZXQucmVzZXJ2ZSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRSZXNlcnZlCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk0LTk1CiAgICAvLyBpZiBhc3NldC5yZXNlcnZlID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTUKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAzCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAyOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5MwogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAogICAgZnJhbWVfYnVyeSAyCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTAwCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgMwogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDAtMTAxCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzEuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVANgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDEKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMS5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDcKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk5CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDAKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDYKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIGZyYW1lX2RpZyA0CiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjEwNi0xMDcKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGJueiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDcKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyA0CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDExCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA1CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDEKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUAxMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEyCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgNQogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTItMTEzCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBmcmFtZV9kaWcgNQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxNQoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExMQogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X21lcmdlQDE2OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTcKICAgIC8vIGFzc2V0LnRvdGFsCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRUb3RhbAogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTE4CiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIGZyYW1lX2RpZyAyCiAgICAtCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExNy0xMTkKICAgIC8vIGFzc2V0LnRvdGFsCiAgICAvLyAtIHJlc2VydmVfYmFsYW5jZQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICBmcmFtZV9kaWcgMAogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIwCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICBmcmFtZV9kaWcgMQogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIxCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAtIG5vdF9jaXJjdWxhdGluZ19iYWxhbmNlXzMKICAgIHN3YXAKICAgIC0KICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTE2LTEyMgogICAgLy8gcmV0dXJuICgKICAgIC8vICAgICBhc3NldC50b3RhbAogICAgLy8gICAgIC0gcmVzZXJ2ZV9iYWxhbmNlCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8zCiAgICAvLyApCiAgICBmcmFtZV9idXJ5IDAKICAgIHJldHN1YgoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDE1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTQKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMykKICAgIGZyYW1lX2RpZyA1CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTYKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxMToKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA4CiAgICAvLyBlbHNlIGFzc2V0LmJhbGFuY2Uobm90X2NpcmN1bGF0aW5nXzIpCiAgICBmcmFtZV9kaWcgNAogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMQogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTIKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDIKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMSkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgZnJhbWVfYnVyeSAwCiAgICBiIGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4CgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfZmFsc2VAMzoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTYKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShhc3NldC5yZXNlcnZlKQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMgogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANAo=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBzbWFydF9jb250cmFjdHMuY2lyY3VsYXRpbmdfc3VwcGx5LmNvbnRyYWN0LkNpcmN1bGF0aW5nU3VwcGx5Ll9fYWxnb3B5X2VudHJ5cG9pbnRfd2l0aF9pbml0KCkgLT4gdWludDY0OgptYWluOgogICAgaW50Y2Jsb2NrIDAgMQogICAgYnl0ZWNibG9jayAiYXNzZXRfaWQiICJidXJuZWQiICJsb2NrZWQiICJnZW5lcmljIgogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyNC0yNQogICAgLy8gIyBHbG9iYWwgU3RhdGUKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBVSW50NjQoKQogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBpbnRjXzAgLy8gMAogICAgYXBwX2dsb2JhbF9wdXQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjcKICAgIC8vIEFkZHJlc3MoKSwga2V5PWNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMQogICAgYnl0ZWNfMSAvLyAiYnVybmVkIgogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjI2LTI4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8xID0gR2xvYmFsU3RhdGUoCiAgICAvLyAgICAgQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8xCiAgICAvLyApCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozMAogICAgLy8gQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yCiAgICBieXRlY18yIC8vICJsb2NrZWQiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjktMzEKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzIKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjMzCiAgICAvLyBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MzItMzQKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CgptYWluX2FmdGVyX2lmX2Vsc2VAMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9iYXJlX3JvdXRpbmdAOAogICAgcHVzaGJ5dGVzcyAweDcwOWI4MGE4IDB4MGI2MmM3MjggMHg1Y2MyYzUzNSAvLyBtZXRob2QgInNldF9hc3NldCh1aW50NjQpdm9pZCIsIG1ldGhvZCAic2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKGFkZHJlc3Msc3RyaW5nKXZvaWQiLCBtZXRob2QgImFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHkodWludDY0KXVpbnQ2NCIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIG1hdGNoIG1haW5fc2V0X2Fzc2V0X3JvdXRlQDUgbWFpbl9zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfcm91dGVANiBtYWluX2FyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfcm91dGVANwoKbWFpbl9hZnRlcl9pZl9lbHNlQDEwOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIGludGNfMCAvLyAwCiAgICByZXR1cm4KCm1haW5fYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV9yb3V0ZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjIwCiAgICAvLyBjbGFzcyBDaXJjdWxhdGluZ1N1cHBseShBUkM0Q29udHJhY3QpOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgYnRvaQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgY2FsbHN1YiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5CiAgICBpdG9iCiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCm1haW5fc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3JvdXRlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIGFzc2VydCAvLyBPbkNvbXBsZXRpb24gaXMgbm90IE5vT3AKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIG5vdCBjcmVhdGluZwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDIKICAgIGV4dHJhY3QgMiAwCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX3NldF9hc3NldF9yb3V0ZUA1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNgogICAgLy8gQGFiaW1ldGhvZCgpCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBidG9pCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjM2CiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X2Fzc2V0CiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX2JhcmVfcm91dGluZ0A4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4biBPbkNvbXBsZXRpb24KICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMTAKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIGNyZWF0aW5nCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfYXNzZXQoYXNzZXRfaWQ6IHVpbnQ2NCkgLT4gdm9pZDoKc2V0X2Fzc2V0OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNi0zNwogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X2Fzc2V0KHNlbGYsIGFzc2V0X2lkOiBVSW50NjQpIC0+IE5vbmU6CiAgICBwcm90byAxIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NDUtNDYKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciBhbmQgbm90IHNlbGYuYXNzZXRfaWQsIGVyci5VTkFVVEhPUklaRUQKICAgIHR4biBTZW5kZXIKICAgIGZyYW1lX2RpZyAtMQogICAgYXNzZXRfcGFyYW1zX2dldCBBc3NldE1hbmFnZXIKICAgIGFzc2VydCAvLyBhc3NldCBleGlzdHMKICAgID09CiAgICBieiBzZXRfYXNzZXRfYm9vbF9mYWxzZUAzCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYuYXNzZXRfaWQgZXhpc3RzCiAgICBibnogc2V0X2Fzc2V0X2Jvb2xfZmFsc2VAMwogICAgaW50Y18xIC8vIDEKCnNldF9hc3NldF9ib29sX21lcmdlQDQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ1LTQ2CiAgICAvLyAjIFByZWNvbmRpdGlvbnMKICAgIC8vIGFzc2VydCBUeG4uc2VuZGVyID09IGFzc2V0Lm1hbmFnZXIgYW5kIG5vdCBzZWxmLmFzc2V0X2lkLCBlcnIuVU5BVVRIT1JJWkVECiAgICBhc3NlcnQgLy8gVW5hdXRob3JpemVkCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ3LTQ4CiAgICAvLyAjIEVmZmVjdHMKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBhc3NldF9pZAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBmcmFtZV9kaWcgLTEKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9hc3NldF9ib29sX2ZhbHNlQDM6CiAgICBpbnRjXzAgLy8gMAogICAgYiBzZXRfYXNzZXRfYm9vbF9tZXJnZUA0CgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3MoYWRkcmVzczogYnl0ZXMsIGxhYmVsOiBieXRlcykgLT4gdm9pZDoKc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo1MC01MQogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKHNlbGYsIGFkZHJlc3M6IEFkZHJlc3MsIGxhYmVsOiBTdHJpbmcpIC0+IE5vbmU6CiAgICBwcm90byAyIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NTkKICAgIC8vIGFzc2V0ID0gQXNzZXQoc2VsZi5hc3NldF9pZCkKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjAtNjEKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciwgZXJyLlVOQVVUSE9SSVpFRAogICAgdHhuIFNlbmRlcgogICAgZGlnIDEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRNYW5hZ2VyCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICA9PQogICAgYXNzZXJ0IC8vIFVuYXV0aG9yaXplZAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2MgogICAgLy8gYXNzZXJ0IEFjY291bnQoYWRkcmVzcy5ieXRlcykuaXNfb3B0ZWRfaW4oYXNzZXQpLCBlcnIuTk9UX09QVEVEX0lOCiAgICBmcmFtZV9kaWcgLTIKICAgIHN3YXAKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBhc3NlcnQgLy8gTm90IE9wdGVkLUluCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY1CiAgICAvLyBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjcKICAgIC8vIGNhc2UgY2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yOgogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2OQogICAgLy8gY2FzZSBjZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzM6CiAgICBieXRlY18zIC8vICJnZW5lcmljIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2My03MgogICAgLy8gIyBFZmZlY3RzCiAgICAvLyBtYXRjaCBsYWJlbDoKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMjoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMi52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMzoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIF86CiAgICAvLyAgICAgICAgIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGZyYW1lX2RpZyAtMQogICAgbWF0Y2ggc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3N3aXRjaF9jYXNlXzBAMSBzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMUAyIHNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8yQDMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NzIKICAgIC8vIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGVyciAvLyBJbnZhbGlkIExhYmVsCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMkAzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3MAogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBmcmFtZV9kaWcgLTIKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8xQDI6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8yLnZhbHVlID0gYWRkcmVzcwogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgZnJhbWVfZGlnIC0yCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgcmV0c3ViCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMEAxOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2NgogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIGZyYW1lX2RpZyAtMgogICAgYXBwX2dsb2JhbF9wdXQKICAgIHJldHN1YgoKCi8vIHNtYXJ0X2NvbnRyYWN0cy5jaXJjdWxhdGluZ19zdXBwbHkuY29udHJhY3QuQ2lyY3VsYXRpbmdTdXBwbHkuYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShhc3NldF9pZDogdWludDY0KSAtPiB1aW50NjQ6CmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHk6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojc0LTc1CiAgICAvLyBAYWJpbWV0aG9kKHJlYWRvbmx5PVRydWUpCiAgICAvLyBkZWYgYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShzZWxmLCBhc3NldF9pZDogVUludDY0KSAtPiBVSW50NjQ6CiAgICBwcm90byAxIDEKICAgIHB1c2hieXRlcyAiIgogICAgZHVwbiAyCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg2CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMSA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18xIC8vICJidXJuZWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzEgZXhpc3RzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg3CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMiA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMi52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18yIC8vICJsb2NrZWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgZXhpc3RzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg4CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMyA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18zIC8vICJnZW5lcmljIgogICAgYXBwX2dsb2JhbF9nZXRfZXgKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8zIGV4aXN0cwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo4OS05MAogICAgLy8gIyBQcmVjb25kaXRpb25zCiAgICAvLyBhc3NlcnQgYXNzZXRfaWQgPT0gc2VsZi5hc3NldF9pZCwgZXJyLklOVkFMSURfQVNTRVRfSUQKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIGZyYW1lX2RpZyAtMQogICAgPT0KICAgIGFzc2VydCAvLyBJbnZhbGlkIEFTQSBJRAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5NAogICAgLy8gaWYgYXNzZXQucmVzZXJ2ZSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRSZXNlcnZlCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk0LTk1CiAgICAvLyBpZiBhc3NldC5yZXNlcnZlID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTUKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAzCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAyOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5MwogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAogICAgZnJhbWVfYnVyeSAyCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTAwCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgMwogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDAtMTAxCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzEuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVANgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDEKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMS5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDcKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk5CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDAKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDYKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIGZyYW1lX2RpZyA0CiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjEwNi0xMDcKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGJueiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDcKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyA0CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDExCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA1CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDEKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUAxMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEyCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgNQogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTItMTEzCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBmcmFtZV9kaWcgNQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxNQoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExMQogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X21lcmdlQDE2OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTcKICAgIC8vIGFzc2V0LnRvdGFsCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRUb3RhbAogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTE4CiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIGZyYW1lX2RpZyAyCiAgICAtCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExNy0xMTkKICAgIC8vIGFzc2V0LnRvdGFsCiAgICAvLyAtIHJlc2VydmVfYmFsYW5jZQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICBmcmFtZV9kaWcgMAogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIwCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICBmcmFtZV9kaWcgMQogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIxCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAtIG5vdF9jaXJjdWxhdGluZ19iYWxhbmNlXzMKICAgIHN3YXAKICAgIC0KICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTE2LTEyMgogICAgLy8gcmV0dXJuICgKICAgIC8vICAgICBhc3NldC50b3RhbAogICAgLy8gICAgIC0gcmVzZXJ2ZV9iYWxhbmNlCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8zCiAgICAvLyApCiAgICBmcmFtZV9idXJ5IDAKICAgIHJldHN1YgoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDE1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTQKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMykKICAgIGZyYW1lX2RpZyA1CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTYKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxMToKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA4CiAgICAvLyBlbHNlIGFzc2V0LmJhbGFuY2Uobm90X2NpcmN1bGF0aW5nXzIpCiAgICBmcmFtZV9kaWcgNAogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMQogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTIKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDIKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMSkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgZnJhbWVfYnVyeSAwCiAgICBiIGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4CgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfZmFsc2VAMzoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTYKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShhc3NldC5yZXNlcnZlKQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMgogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANAo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMSAvLyAxCiAgICByZXR1cm4K" }, "byteCode": { - "approval": "CiADAAEgJgQIYXNzZXRfaWQGYnVybmVkBmxvY2tlZAdnZW5lcmljMRhAAA8oImcpMgNnKjIDZysyA2cxG0EAXYIDBHCbgKgEC2LHKARcwsU1NhoAjgMAMQAcAAIiQzEZFEQxGEQ2GgEXiACXFoAEFR98dUxQsCNDMRkURDEYRDYaATYaAlcCAIgAPSNDMRkURDEYRDYaAReIAA0jQzEZQP+6MRgURCNDigEAMQCL/3EHRBJBAA4iKGVEQAAHI0Qoi/9niSJC//aKAgAiKGVEMQBLAXEHRBJEi/4VJBJEi/5McABFAUQpKiuL/44DAAsABgABACuL/meJKov+Z4kpi/5niYoBAYAARwIiKWVMSU8CRBUkEkQiKmVMSU8CRBUkEkQiK2VMSU8CRBUkEkQiKGVEi/8SRIv/cQhEMgMSQAAOi/9xCESL/3AARQFAAHgijAKLAzIDEkAAC4sDi/9wAEUBQABWIowAiwQyAxJAAAuLBIv/cABFAUAANCKMAYsFMgMSQAALiwWL/3AARQFAABQii/9xAESLAgmLAAmLAQlMCYwAiYsFi/9wAERC/+OLBIv/cABEjAFC/8OLA4v/cABEjABC/6GL/3EIRIv/cABEjAJC/3w=", + "approval": "CiACAAEmBAhhc3NldF9pZAZidXJuZWQGbG9ja2VkB2dlbmVyaWMxGEAADygiZykyA2cqMgNnKzIDZzEbQQBdggMEcJuAqAQLYscoBFzCxTU2GgCOAwAxABwAAiJDMRkURDEYRDYaAReIAJEWgAQVH3x1TFCwI0MxGRREMRhENhoBNhoCVwIAiAA9I0MxGRREMRhENhoBF4gADSNDMRlA/7oxGBREI0OKAQAxAIv/cQdEEkEADiIoZURAAAcjRCiL/2eJIkL/9ooCACIoZUQxAEsBcQdEEkSL/kxwAEUBRCkqK4v/jgMACwAGAAEAK4v+Z4kqi/5niSmL/meJigEBgABHAiIpZUQiKmVEIitlRCIoZUSL/xJEi/9xCEQyAxJAAA6L/3EIRIv/cABFAUAAeCKMAosDMgMSQAALiwOL/3AARQFAAFYijACLBDIDEkAAC4sEi/9wAEUBQAA0IowBiwUyAxJAAAuLBYv/cABFAUAAFCKL/3EARIsCCYsACYsBCUwJjACJiwWL/3AAREL/44sEi/9wAESMAUL/w4sDi/9wAESMAEL/oYv/cQhEi/9wAESMAkL/fA==", "clear": "CoEBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 4, - "minor": 4, - "patch": 0 + "minor": 8, + "patch": 1 } }, "events": [], diff --git a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/circulating_supply_client.py b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/circulating_supply_client.py index b78b7d45e..407c4aba6 100644 --- a/assets/arc-0062/smart_contracts/artifacts/circulating_supply/circulating_supply_client.py +++ b/assets/arc-0062/smart_contracts/artifacts/circulating_supply/circulating_supply_client.py @@ -19,7 +19,7 @@ import algokit_utils from algokit_utils import AlgorandClient as _AlgoKitAlgorandClient -_APP_SPEC_JSON = r"""{"arcs": [22, 28], "bareActions": {"call": [], "create": ["NoOp"]}, "methods": [{"actions": {"call": ["NoOp"], "create": []}, "args": [{"type": "uint64", "desc": "ASA ID of the circulating supply", "name": "asset_id"}], "name": "set_asset", "returns": {"type": "void"}, "desc": "Set the ASA ID for the circulating supply - Authorization: ASA Manager Address", "events": [], "readonly": false, "recommendations": {}}, {"actions": {"call": ["NoOp"], "create": []}, "args": [{"type": "address", "desc": "Address to assign to the label to", "name": "address"}, {"type": "string", "desc": "Not-circulating label selector", "name": "label"}], "name": "set_not_circulating_address", "returns": {"type": "void"}, "desc": "Set non-circulating supply addresses - Authorization: ASA Manager Address", "events": [], "readonly": false, "recommendations": {}}, {"actions": {"call": ["NoOp"], "create": []}, "args": [{"type": "uint64", "desc": "ASA ID of the circulating supply", "name": "asset_id"}], "name": "arc62_get_circulating_supply", "returns": {"type": "uint64", "desc": "ASA circulating supply"}, "desc": "Get ASA circulating supply", "events": [], "readonly": true, "recommendations": {}}], "name": "CirculatingSupply", "state": {"keys": {"box": {}, "global": {"asset_id": {"key": "YXNzZXRfaWQ=", "keyType": "AVMString", "valueType": "AVMUint64"}, "not_circulating_label_1": {"key": "YnVybmVk", "keyType": "AVMString", "valueType": "address"}, "not_circulating_label_2": {"key": "bG9ja2Vk", "keyType": "AVMString", "valueType": "address"}, "not_circulating_label_3": {"key": "Z2VuZXJpYw==", "keyType": "AVMString", "valueType": "address"}}, "local": {}}, "maps": {"box": {}, "global": {}, "local": {}}, "schema": {"global": {"bytes": 3, "ints": 1}, "local": {"bytes": 0, "ints": 0}}}, "structs": {}, "byteCode": {"approval": "CiADAAEgJgQIYXNzZXRfaWQGYnVybmVkBmxvY2tlZAdnZW5lcmljMRhAAA8oImcpMgNnKjIDZysyA2cxG0EAXYIDBHCbgKgEC2LHKARcwsU1NhoAjgMAMQAcAAIiQzEZFEQxGEQ2GgEXiACXFoAEFR98dUxQsCNDMRkURDEYRDYaATYaAlcCAIgAPSNDMRkURDEYRDYaAReIAA0jQzEZQP+6MRgURCNDigEAMQCL/3EHRBJBAA4iKGVEQAAHI0Qoi/9niSJC//aKAgAiKGVEMQBLAXEHRBJEi/4VJBJEi/5McABFAUQpKiuL/44DAAsABgABACuL/meJKov+Z4kpi/5niYoBAYAARwIiKWVMSU8CRBUkEkQiKmVMSU8CRBUkEkQiK2VMSU8CRBUkEkQiKGVEi/8SRIv/cQhEMgMSQAAOi/9xCESL/3AARQFAAHgijAKLAzIDEkAAC4sDi/9wAEUBQABWIowAiwQyAxJAAAuLBIv/cABFAUAANCKMAYsFMgMSQAALiwWL/3AARQFAABQii/9xAESLAgmLAAmLAQlMCYwAiYsFi/9wAERC/+OLBIv/cABEjAFC/8OLA4v/cABEjABC/6GL/3EIRIv/cABEjAJC/3w=", "clear": "CoEBQw=="}, "compilerInfo": {"compiler": "puya", "compilerVersion": {"major": 4, "minor": 4, "patch": 0}}, "desc": "ARC-62 Reference Implementation", "events": [], "networks": {}, "source": {"approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBzbWFydF9jb250cmFjdHMuY2lyY3VsYXRpbmdfc3VwcGx5LmNvbnRyYWN0LkNpcmN1bGF0aW5nU3VwcGx5Ll9fYWxnb3B5X2VudHJ5cG9pbnRfd2l0aF9pbml0KCkgLT4gdWludDY0OgptYWluOgogICAgaW50Y2Jsb2NrIDAgMSAzMgogICAgYnl0ZWNibG9jayAiYXNzZXRfaWQiICJidXJuZWQiICJsb2NrZWQiICJnZW5lcmljIgogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyNC0yNQogICAgLy8gIyBHbG9iYWwgU3RhdGUKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBVSW50NjQoKQogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBpbnRjXzAgLy8gMAogICAgYXBwX2dsb2JhbF9wdXQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjcKICAgIC8vIEFkZHJlc3MoKSwga2V5PWNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMQogICAgYnl0ZWNfMSAvLyAiYnVybmVkIgogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjI2LTI4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8xID0gR2xvYmFsU3RhdGUoCiAgICAvLyAgICAgQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8xCiAgICAvLyApCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozMAogICAgLy8gQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yCiAgICBieXRlY18yIC8vICJsb2NrZWQiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjktMzEKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzIKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjMzCiAgICAvLyBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MzItMzQKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CgptYWluX2FmdGVyX2lmX2Vsc2VAMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9iYXJlX3JvdXRpbmdAOAogICAgcHVzaGJ5dGVzcyAweDcwOWI4MGE4IDB4MGI2MmM3MjggMHg1Y2MyYzUzNSAvLyBtZXRob2QgInNldF9hc3NldCh1aW50NjQpdm9pZCIsIG1ldGhvZCAic2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKGFkZHJlc3Msc3RyaW5nKXZvaWQiLCBtZXRob2QgImFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHkodWludDY0KXVpbnQ2NCIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIG1hdGNoIG1haW5fc2V0X2Fzc2V0X3JvdXRlQDUgbWFpbl9zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfcm91dGVANiBtYWluX2FyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfcm91dGVANwoKbWFpbl9hZnRlcl9pZl9lbHNlQDEwOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIGludGNfMCAvLyAwCiAgICByZXR1cm4KCm1haW5fYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV9yb3V0ZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjIwCiAgICAvLyBjbGFzcyBDaXJjdWxhdGluZ1N1cHBseShBUkM0Q29udHJhY3QpOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgYnRvaQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgY2FsbHN1YiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5CiAgICBpdG9iCiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCm1haW5fc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3JvdXRlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIGFzc2VydCAvLyBPbkNvbXBsZXRpb24gaXMgbm90IE5vT3AKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIG5vdCBjcmVhdGluZwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDIKICAgIGV4dHJhY3QgMiAwCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX3NldF9hc3NldF9yb3V0ZUA1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNgogICAgLy8gQGFiaW1ldGhvZCgpCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBidG9pCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjM2CiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X2Fzc2V0CiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX2JhcmVfcm91dGluZ0A4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4biBPbkNvbXBsZXRpb24KICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMTAKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIGNyZWF0aW5nCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfYXNzZXQoYXNzZXRfaWQ6IHVpbnQ2NCkgLT4gdm9pZDoKc2V0X2Fzc2V0OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNi0zNwogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X2Fzc2V0KHNlbGYsIGFzc2V0X2lkOiBVSW50NjQpIC0+IE5vbmU6CiAgICBwcm90byAxIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NDUtNDYKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciBhbmQgbm90IHNlbGYuYXNzZXRfaWQsIGVyci5VTkFVVEhPUklaRUQKICAgIHR4biBTZW5kZXIKICAgIGZyYW1lX2RpZyAtMQogICAgYXNzZXRfcGFyYW1zX2dldCBBc3NldE1hbmFnZXIKICAgIGFzc2VydCAvLyBhc3NldCBleGlzdHMKICAgID09CiAgICBieiBzZXRfYXNzZXRfYm9vbF9mYWxzZUAzCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYuYXNzZXRfaWQgZXhpc3RzCiAgICBibnogc2V0X2Fzc2V0X2Jvb2xfZmFsc2VAMwogICAgaW50Y18xIC8vIDEKCnNldF9hc3NldF9ib29sX21lcmdlQDQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ1LTQ2CiAgICAvLyAjIFByZWNvbmRpdGlvbnMKICAgIC8vIGFzc2VydCBUeG4uc2VuZGVyID09IGFzc2V0Lm1hbmFnZXIgYW5kIG5vdCBzZWxmLmFzc2V0X2lkLCBlcnIuVU5BVVRIT1JJWkVECiAgICBhc3NlcnQgLy8gVW5hdXRob3JpemVkCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ3LTQ4CiAgICAvLyAjIEVmZmVjdHMKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBhc3NldF9pZAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBmcmFtZV9kaWcgLTEKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9hc3NldF9ib29sX2ZhbHNlQDM6CiAgICBpbnRjXzAgLy8gMAogICAgYiBzZXRfYXNzZXRfYm9vbF9tZXJnZUA0CgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3MoYWRkcmVzczogYnl0ZXMsIGxhYmVsOiBieXRlcykgLT4gdm9pZDoKc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo1MC01MQogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKHNlbGYsIGFkZHJlc3M6IEFkZHJlc3MsIGxhYmVsOiBTdHJpbmcpIC0+IE5vbmU6CiAgICBwcm90byAyIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NTkKICAgIC8vIGFzc2V0ID0gQXNzZXQoc2VsZi5hc3NldF9pZCkKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjAtNjEKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciwgZXJyLlVOQVVUSE9SSVpFRAogICAgdHhuIFNlbmRlcgogICAgZGlnIDEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRNYW5hZ2VyCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICA9PQogICAgYXNzZXJ0IC8vIFVuYXV0aG9yaXplZAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2MgogICAgLy8gYXNzZXJ0IEFjY291bnQoYWRkcmVzcy5ieXRlcykuaXNfb3B0ZWRfaW4oYXNzZXQpLCBlcnIuTk9UX09QVEVEX0lOCiAgICBmcmFtZV9kaWcgLTIKICAgIGxlbgogICAgaW50Y18yIC8vIDMyCiAgICA9PQogICAgYXNzZXJ0IC8vIEFkZHJlc3MgbGVuZ3RoIGlzIDMyIGJ5dGVzCiAgICBmcmFtZV9kaWcgLTIKICAgIHN3YXAKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBhc3NlcnQgLy8gTm90IE9wdGVkLUluCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY1CiAgICAvLyBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjcKICAgIC8vIGNhc2UgY2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yOgogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2OQogICAgLy8gY2FzZSBjZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzM6CiAgICBieXRlY18zIC8vICJnZW5lcmljIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2My03MgogICAgLy8gIyBFZmZlY3RzCiAgICAvLyBtYXRjaCBsYWJlbDoKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMjoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMi52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMzoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIF86CiAgICAvLyAgICAgICAgIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGZyYW1lX2RpZyAtMQogICAgbWF0Y2ggc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3N3aXRjaF9jYXNlXzBAMSBzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMUAyIHNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8yQDMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NzIKICAgIC8vIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGVyciAvLyBJbnZhbGlkIExhYmVsCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMkAzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3MAogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBmcmFtZV9kaWcgLTIKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8xQDI6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8yLnZhbHVlID0gYWRkcmVzcwogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgZnJhbWVfZGlnIC0yCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgcmV0c3ViCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMEAxOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2NgogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIGZyYW1lX2RpZyAtMgogICAgYXBwX2dsb2JhbF9wdXQKICAgIHJldHN1YgoKCi8vIHNtYXJ0X2NvbnRyYWN0cy5jaXJjdWxhdGluZ19zdXBwbHkuY29udHJhY3QuQ2lyY3VsYXRpbmdTdXBwbHkuYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShhc3NldF9pZDogdWludDY0KSAtPiB1aW50NjQ6CmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHk6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojc0LTc1CiAgICAvLyBAYWJpbWV0aG9kKHJlYWRvbmx5PVRydWUpCiAgICAvLyBkZWYgYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShzZWxmLCBhc3NldF9pZDogVUludDY0KSAtPiBVSW50NjQ6CiAgICBwcm90byAxIDEKICAgIHB1c2hieXRlcyAiIgogICAgZHVwbiAyCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg2CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMSA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18xIC8vICJidXJuZWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgc3dhcAogICAgZHVwCiAgICB1bmNvdmVyIDIKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8xIGV4aXN0cwogICAgbGVuCiAgICBpbnRjXzIgLy8gMzIKICAgID09CiAgICBhc3NlcnQgLy8gQWRkcmVzcyBsZW5ndGggaXMgMzIgYnl0ZXMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6ODcKICAgIC8vIG5vdF9jaXJjdWxhdGluZ18yID0gQWNjb3VudChzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8yLnZhbHVlLmJ5dGVzKQogICAgaW50Y18wIC8vIDAKICAgIGJ5dGVjXzIgLy8gImxvY2tlZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBzd2FwCiAgICBkdXAKICAgIHVuY292ZXIgMgogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgZXhpc3RzCiAgICBsZW4KICAgIGludGNfMiAvLyAzMgogICAgPT0KICAgIGFzc2VydCAvLyBBZGRyZXNzIGxlbmd0aCBpcyAzMiBieXRlcwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo4OAogICAgLy8gbm90X2NpcmN1bGF0aW5nXzMgPSBBY2NvdW50KHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMudmFsdWUuYnl0ZXMpCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMyAvLyAiZ2VuZXJpYyIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBzd2FwCiAgICBkdXAKICAgIHVuY292ZXIgMgogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMgZXhpc3RzCiAgICBsZW4KICAgIGludGNfMiAvLyAzMgogICAgPT0KICAgIGFzc2VydCAvLyBBZGRyZXNzIGxlbmd0aCBpcyAzMiBieXRlcwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo4OS05MAogICAgLy8gIyBQcmVjb25kaXRpb25zCiAgICAvLyBhc3NlcnQgYXNzZXRfaWQgPT0gc2VsZi5hc3NldF9pZCwgZXJyLklOVkFMSURfQVNTRVRfSUQKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIGZyYW1lX2RpZyAtMQogICAgPT0KICAgIGFzc2VydCAvLyBJbnZhbGlkIEFTQSBJRAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5NAogICAgLy8gaWYgYXNzZXQucmVzZXJ2ZSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRSZXNlcnZlCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk0LTk1CiAgICAvLyBpZiBhc3NldC5yZXNlcnZlID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTUKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAzCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAyOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5MwogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAogICAgZnJhbWVfYnVyeSAyCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTAwCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgMwogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDAtMTAxCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzEuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVANgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDEKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMS5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDcKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk5CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDAKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDYKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIGZyYW1lX2RpZyA0CiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjEwNi0xMDcKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGJueiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDcKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyA0CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDExCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA1CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDEKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUAxMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEyCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgNQogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTItMTEzCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBmcmFtZV9kaWcgNQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxNQoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExMQogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X21lcmdlQDE2OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTcKICAgIC8vIGFzc2V0LnRvdGFsCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRUb3RhbAogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTE4CiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIGZyYW1lX2RpZyAyCiAgICAtCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExNy0xMTkKICAgIC8vIGFzc2V0LnRvdGFsCiAgICAvLyAtIHJlc2VydmVfYmFsYW5jZQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICBmcmFtZV9kaWcgMAogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIwCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICBmcmFtZV9kaWcgMQogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIxCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAtIG5vdF9jaXJjdWxhdGluZ19iYWxhbmNlXzMKICAgIHN3YXAKICAgIC0KICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTE2LTEyMgogICAgLy8gcmV0dXJuICgKICAgIC8vICAgICBhc3NldC50b3RhbAogICAgLy8gICAgIC0gcmVzZXJ2ZV9iYWxhbmNlCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8zCiAgICAvLyApCiAgICBmcmFtZV9idXJ5IDAKICAgIHJldHN1YgoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDE1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTQKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMykKICAgIGZyYW1lX2RpZyA1CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTYKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxMToKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA4CiAgICAvLyBlbHNlIGFzc2V0LmJhbGFuY2Uobm90X2NpcmN1bGF0aW5nXzIpCiAgICBmcmFtZV9kaWcgNAogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMQogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTIKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDIKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMSkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgZnJhbWVfYnVyeSAwCiAgICBiIGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4CgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfZmFsc2VAMzoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTYKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShhc3NldC5yZXNlcnZlKQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMgogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANAo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMSAvLyAxCiAgICByZXR1cm4K"}, "sourceInfo": {"approval": {"pcOffsetMethod": "none", "sourceInfo": [{"pc": [221, 277, 289, 301], "errorMessage": "Address length is 32 bytes"}, {"pc": [309], "errorMessage": "Invalid ASA ID"}, {"pc": [243], "errorMessage": "Invalid Label"}, {"pc": [229], "errorMessage": "Not Opted-In"}, {"pc": [97, 123, 144], "errorMessage": "OnCompletion is not NoOp"}, {"pc": [190, 215], "errorMessage": "Unauthorized"}, {"pc": [427, 437, 449, 464], "errorMessage": "account opted into asset"}, {"pc": [177, 213, 314, 325, 406, 459], "errorMessage": "asset exists"}, {"pc": [165], "errorMessage": "can only call when creating"}, {"pc": [100, 126, 147], "errorMessage": "can only call when not creating"}, {"pc": [185, 206, 305], "errorMessage": "check self.asset_id exists"}, {"pc": [273], "errorMessage": "check self.not_circulating_label_1 exists"}, {"pc": [285], "errorMessage": "check self.not_circulating_label_2 exists"}, {"pc": [297], "errorMessage": "check self.not_circulating_label_3 exists"}]}, "clear": {"pcOffsetMethod": "none", "sourceInfo": []}}, "templateVariables": {}}""" +_APP_SPEC_JSON = r"""{"arcs": [22, 28], "bareActions": {"call": [], "create": ["NoOp"]}, "methods": [{"actions": {"call": ["NoOp"], "create": []}, "args": [{"type": "uint64", "desc": "ASA ID of the circulating supply", "name": "asset_id"}], "name": "set_asset", "returns": {"type": "void"}, "desc": "Set the ASA ID for the circulating supply - Authorization: ASA Manager Address", "events": [], "readonly": false, "recommendations": {}}, {"actions": {"call": ["NoOp"], "create": []}, "args": [{"type": "address", "desc": "Address to assign to the label to", "name": "address"}, {"type": "string", "desc": "Not-circulating label selector", "name": "label"}], "name": "set_not_circulating_address", "returns": {"type": "void"}, "desc": "Set non-circulating supply addresses - Authorization: ASA Manager Address", "events": [], "readonly": false, "recommendations": {}}, {"actions": {"call": ["NoOp"], "create": []}, "args": [{"type": "uint64", "desc": "ASA ID of the circulating supply", "name": "asset_id"}], "name": "arc62_get_circulating_supply", "returns": {"type": "uint64", "desc": "ASA circulating supply"}, "desc": "Get ASA circulating supply", "events": [], "readonly": true, "recommendations": {}}], "name": "CirculatingSupply", "state": {"keys": {"box": {}, "global": {"asset_id": {"key": "YXNzZXRfaWQ=", "keyType": "AVMString", "valueType": "AVMUint64"}, "not_circulating_label_1": {"key": "YnVybmVk", "keyType": "AVMString", "valueType": "address"}, "not_circulating_label_2": {"key": "bG9ja2Vk", "keyType": "AVMString", "valueType": "address"}, "not_circulating_label_3": {"key": "Z2VuZXJpYw==", "keyType": "AVMString", "valueType": "address"}}, "local": {}}, "maps": {"box": {}, "global": {}, "local": {}}, "schema": {"global": {"bytes": 3, "ints": 1}, "local": {"bytes": 0, "ints": 0}}}, "structs": {}, "byteCode": {"approval": "CiACAAEmBAhhc3NldF9pZAZidXJuZWQGbG9ja2VkB2dlbmVyaWMxGEAADygiZykyA2cqMgNnKzIDZzEbQQBdggMEcJuAqAQLYscoBFzCxTU2GgCOAwAxABwAAiJDMRkURDEYRDYaAReIAJEWgAQVH3x1TFCwI0MxGRREMRhENhoBNhoCVwIAiAA9I0MxGRREMRhENhoBF4gADSNDMRlA/7oxGBREI0OKAQAxAIv/cQdEEkEADiIoZURAAAcjRCiL/2eJIkL/9ooCACIoZUQxAEsBcQdEEkSL/kxwAEUBRCkqK4v/jgMACwAGAAEAK4v+Z4kqi/5niSmL/meJigEBgABHAiIpZUQiKmVEIitlRCIoZUSL/xJEi/9xCEQyAxJAAA6L/3EIRIv/cABFAUAAeCKMAosDMgMSQAALiwOL/3AARQFAAFYijACLBDIDEkAAC4sEi/9wAEUBQAA0IowBiwUyAxJAAAuLBYv/cABFAUAAFCKL/3EARIsCCYsACYsBCUwJjACJiwWL/3AAREL/44sEi/9wAESMAUL/w4sDi/9wAESMAEL/oYv/cQhEi/9wAESMAkL/fA==", "clear": "CoEBQw=="}, "compilerInfo": {"compiler": "puya", "compilerVersion": {"major": 4, "minor": 8, "patch": 1}}, "desc": "ARC-62 Reference Implementation", "events": [], "networks": {}, "source": {"approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBzbWFydF9jb250cmFjdHMuY2lyY3VsYXRpbmdfc3VwcGx5LmNvbnRyYWN0LkNpcmN1bGF0aW5nU3VwcGx5Ll9fYWxnb3B5X2VudHJ5cG9pbnRfd2l0aF9pbml0KCkgLT4gdWludDY0OgptYWluOgogICAgaW50Y2Jsb2NrIDAgMQogICAgYnl0ZWNibG9jayAiYXNzZXRfaWQiICJidXJuZWQiICJsb2NrZWQiICJnZW5lcmljIgogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyNC0yNQogICAgLy8gIyBHbG9iYWwgU3RhdGUKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBVSW50NjQoKQogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBpbnRjXzAgLy8gMAogICAgYXBwX2dsb2JhbF9wdXQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjcKICAgIC8vIEFkZHJlc3MoKSwga2V5PWNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMQogICAgYnl0ZWNfMSAvLyAiYnVybmVkIgogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjI2LTI4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8xID0gR2xvYmFsU3RhdGUoCiAgICAvLyAgICAgQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8xCiAgICAvLyApCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozMAogICAgLy8gQWRkcmVzcygpLCBrZXk9Y2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yCiAgICBieXRlY18yIC8vICJsb2NrZWQiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjktMzEKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzIKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjMzCiAgICAvLyBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MzItMzQKICAgIC8vIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzMgPSBHbG9iYWxTdGF0ZSgKICAgIC8vICAgICBBZGRyZXNzKCksIGtleT1jZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzMKICAgIC8vICkKICAgIGFwcF9nbG9iYWxfcHV0CgptYWluX2FmdGVyX2lmX2Vsc2VAMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9iYXJlX3JvdXRpbmdAOAogICAgcHVzaGJ5dGVzcyAweDcwOWI4MGE4IDB4MGI2MmM3MjggMHg1Y2MyYzUzNSAvLyBtZXRob2QgInNldF9hc3NldCh1aW50NjQpdm9pZCIsIG1ldGhvZCAic2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKGFkZHJlc3Msc3RyaW5nKXZvaWQiLCBtZXRob2QgImFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHkodWludDY0KXVpbnQ2NCIKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDAKICAgIG1hdGNoIG1haW5fc2V0X2Fzc2V0X3JvdXRlQDUgbWFpbl9zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfcm91dGVANiBtYWluX2FyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfcm91dGVANwoKbWFpbl9hZnRlcl9pZl9lbHNlQDEwOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIGludGNfMCAvLyAwCiAgICByZXR1cm4KCm1haW5fYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV9yb3V0ZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjIwCiAgICAvLyBjbGFzcyBDaXJjdWxhdGluZ1N1cHBseShBUkM0Q29udHJhY3QpOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgYnRvaQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3NAogICAgLy8gQGFiaW1ldGhvZChyZWFkb25seT1UcnVlKQogICAgY2FsbHN1YiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5CiAgICBpdG9iCiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMSAvLyAxCiAgICByZXR1cm4KCm1haW5fc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3JvdXRlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIGFzc2VydCAvLyBPbkNvbXBsZXRpb24gaXMgbm90IE5vT3AKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIG5vdCBjcmVhdGluZwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDIKICAgIGV4dHJhY3QgMiAwCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjUwCiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX3NldF9hc3NldF9yb3V0ZUA1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNgogICAgLy8gQGFiaW1ldGhvZCgpCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MjAKICAgIC8vIGNsYXNzIENpcmN1bGF0aW5nU3VwcGx5KEFSQzRDb250cmFjdCk6CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBidG9pCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjM2CiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgc2V0X2Fzc2V0CiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgptYWluX2JhcmVfcm91dGluZ0A4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToyMAogICAgLy8gY2xhc3MgQ2lyY3VsYXRpbmdTdXBwbHkoQVJDNENvbnRyYWN0KToKICAgIHR4biBPbkNvbXBsZXRpb24KICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMTAKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIGNyZWF0aW5nCiAgICBpbnRjXzEgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfYXNzZXQoYXNzZXRfaWQ6IHVpbnQ2NCkgLT4gdm9pZDoKc2V0X2Fzc2V0OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTozNi0zNwogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X2Fzc2V0KHNlbGYsIGFzc2V0X2lkOiBVSW50NjQpIC0+IE5vbmU6CiAgICBwcm90byAxIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NDUtNDYKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciBhbmQgbm90IHNlbGYuYXNzZXRfaWQsIGVyci5VTkFVVEhPUklaRUQKICAgIHR4biBTZW5kZXIKICAgIGZyYW1lX2RpZyAtMQogICAgYXNzZXRfcGFyYW1zX2dldCBBc3NldE1hbmFnZXIKICAgIGFzc2VydCAvLyBhc3NldCBleGlzdHMKICAgID09CiAgICBieiBzZXRfYXNzZXRfYm9vbF9mYWxzZUAzCiAgICBpbnRjXzAgLy8gMAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYuYXNzZXRfaWQgZXhpc3RzCiAgICBibnogc2V0X2Fzc2V0X2Jvb2xfZmFsc2VAMwogICAgaW50Y18xIC8vIDEKCnNldF9hc3NldF9ib29sX21lcmdlQDQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ1LTQ2CiAgICAvLyAjIFByZWNvbmRpdGlvbnMKICAgIC8vIGFzc2VydCBUeG4uc2VuZGVyID09IGFzc2V0Lm1hbmFnZXIgYW5kIG5vdCBzZWxmLmFzc2V0X2lkLCBlcnIuVU5BVVRIT1JJWkVECiAgICBhc3NlcnQgLy8gVW5hdXRob3JpemVkCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjQ3LTQ4CiAgICAvLyAjIEVmZmVjdHMKICAgIC8vIHNlbGYuYXNzZXRfaWQgPSBhc3NldF9pZAogICAgYnl0ZWNfMCAvLyAiYXNzZXRfaWQiCiAgICBmcmFtZV9kaWcgLTEKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9hc3NldF9ib29sX2ZhbHNlQDM6CiAgICBpbnRjXzAgLy8gMAogICAgYiBzZXRfYXNzZXRfYm9vbF9tZXJnZUA0CgoKLy8gc21hcnRfY29udHJhY3RzLmNpcmN1bGF0aW5nX3N1cHBseS5jb250cmFjdC5DaXJjdWxhdGluZ1N1cHBseS5zZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3MoYWRkcmVzczogYnl0ZXMsIGxhYmVsOiBieXRlcykgLT4gdm9pZDoKc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo1MC01MQogICAgLy8gQGFiaW1ldGhvZCgpCiAgICAvLyBkZWYgc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzKHNlbGYsIGFkZHJlc3M6IEFkZHJlc3MsIGxhYmVsOiBTdHJpbmcpIC0+IE5vbmU6CiAgICBwcm90byAyIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NTkKICAgIC8vIGFzc2V0ID0gQXNzZXQoc2VsZi5hc3NldF9pZCkKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjAtNjEKICAgIC8vICMgUHJlY29uZGl0aW9ucwogICAgLy8gYXNzZXJ0IFR4bi5zZW5kZXIgPT0gYXNzZXQubWFuYWdlciwgZXJyLlVOQVVUSE9SSVpFRAogICAgdHhuIFNlbmRlcgogICAgZGlnIDEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRNYW5hZ2VyCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICA9PQogICAgYXNzZXJ0IC8vIFVuYXV0aG9yaXplZAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2MgogICAgLy8gYXNzZXJ0IEFjY291bnQoYWRkcmVzcy5ieXRlcykuaXNfb3B0ZWRfaW4oYXNzZXQpLCBlcnIuTk9UX09QVEVEX0lOCiAgICBmcmFtZV9kaWcgLTIKICAgIHN3YXAKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBhc3NlcnQgLy8gTm90IE9wdGVkLUluCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY1CiAgICAvLyBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NjcKICAgIC8vIGNhc2UgY2ZnLk5PVF9DSVJDVUxBVElOR19MQUJFTF8yOgogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2OQogICAgLy8gY2FzZSBjZmcuTk9UX0NJUkNVTEFUSU5HX0xBQkVMXzM6CiAgICBieXRlY18zIC8vICJnZW5lcmljIgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2My03MgogICAgLy8gIyBFZmZlY3RzCiAgICAvLyBtYXRjaCBsYWJlbDoKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMToKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMjoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMi52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIGNmZy5OT1RfQ0lSQ1VMQVRJTkdfTEFCRUxfMzoKICAgIC8vICAgICAgICAgc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIC8vICAgICBjYXNlIF86CiAgICAvLyAgICAgICAgIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGZyYW1lX2RpZyAtMQogICAgbWF0Y2ggc2V0X25vdF9jaXJjdWxhdGluZ19hZGRyZXNzX3N3aXRjaF9jYXNlXzBAMSBzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMUAyIHNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8yQDMKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6NzIKICAgIC8vIGFzc2VydCBGYWxzZSwgZXJyLklOVkFMSURfTEFCRUwKICAgIGVyciAvLyBJbnZhbGlkIExhYmVsCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMkAzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo3MAogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzMgLy8gImdlbmVyaWMiCiAgICBmcmFtZV9kaWcgLTIKICAgIGFwcF9nbG9iYWxfcHV0CiAgICByZXRzdWIKCnNldF9ub3RfY2lyY3VsYXRpbmdfYWRkcmVzc19zd2l0Y2hfY2FzZV8xQDI6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjY4CiAgICAvLyBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8yLnZhbHVlID0gYWRkcmVzcwogICAgYnl0ZWNfMiAvLyAibG9ja2VkIgogICAgZnJhbWVfZGlnIC0yCiAgICBhcHBfZ2xvYmFsX3B1dAogICAgcmV0c3ViCgpzZXRfbm90X2NpcmN1bGF0aW5nX2FkZHJlc3Nfc3dpdGNoX2Nhc2VfMEAxOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo2NgogICAgLy8gc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZSA9IGFkZHJlc3MKICAgIGJ5dGVjXzEgLy8gImJ1cm5lZCIKICAgIGZyYW1lX2RpZyAtMgogICAgYXBwX2dsb2JhbF9wdXQKICAgIHJldHN1YgoKCi8vIHNtYXJ0X2NvbnRyYWN0cy5jaXJjdWxhdGluZ19zdXBwbHkuY29udHJhY3QuQ2lyY3VsYXRpbmdTdXBwbHkuYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShhc3NldF9pZDogdWludDY0KSAtPiB1aW50NjQ6CmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHk6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojc0LTc1CiAgICAvLyBAYWJpbWV0aG9kKHJlYWRvbmx5PVRydWUpCiAgICAvLyBkZWYgYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseShzZWxmLCBhc3NldF9pZDogVUludDY0KSAtPiBVSW50NjQ6CiAgICBwcm90byAxIDEKICAgIHB1c2hieXRlcyAiIgogICAgZHVwbiAyCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg2CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMSA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMS52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18xIC8vICJidXJuZWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzEgZXhpc3RzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg3CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMiA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMi52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18yIC8vICJsb2NrZWQiCiAgICBhcHBfZ2xvYmFsX2dldF9leAogICAgYXNzZXJ0IC8vIGNoZWNrIHNlbGYubm90X2NpcmN1bGF0aW5nX2xhYmVsXzIgZXhpc3RzCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojg4CiAgICAvLyBub3RfY2lyY3VsYXRpbmdfMyA9IEFjY291bnQoc2VsZi5ub3RfY2lyY3VsYXRpbmdfbGFiZWxfMy52YWx1ZS5ieXRlcykKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18zIC8vICJnZW5lcmljIgogICAgYXBwX2dsb2JhbF9nZXRfZXgKICAgIGFzc2VydCAvLyBjaGVjayBzZWxmLm5vdF9jaXJjdWxhdGluZ19sYWJlbF8zIGV4aXN0cwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo4OS05MAogICAgLy8gIyBQcmVjb25kaXRpb25zCiAgICAvLyBhc3NlcnQgYXNzZXRfaWQgPT0gc2VsZi5hc3NldF9pZCwgZXJyLklOVkFMSURfQVNTRVRfSUQKICAgIGludGNfMCAvLyAwCiAgICBieXRlY18wIC8vICJhc3NldF9pZCIKICAgIGFwcF9nbG9iYWxfZ2V0X2V4CiAgICBhc3NlcnQgLy8gY2hlY2sgc2VsZi5hc3NldF9pZCBleGlzdHMKICAgIGZyYW1lX2RpZyAtMQogICAgPT0KICAgIGFzc2VydCAvLyBJbnZhbGlkIEFTQSBJRAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5NAogICAgLy8gaWYgYXNzZXQucmVzZXJ2ZSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRSZXNlcnZlCiAgICBhc3NlcnQgLy8gYXNzZXQgZXhpc3RzCiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk0LTk1CiAgICAvLyBpZiBhc3NldC5yZXNlcnZlID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTUKICAgIC8vIG9yIG5vdCBhc3NldC5yZXNlcnZlLmlzX29wdGVkX2luKGFzc2V0KQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAzCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAyOgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weTo5MwogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAogICAgZnJhbWVfYnVyeSAyCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTAwCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgMwogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDAtMTAxCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMSA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzEuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVANgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDEKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMS5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDcKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV90cnVlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5Ojk5CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDAKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDYKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIGZyYW1lX2RpZyA0CiAgICBnbG9iYWwgWmVyb0FkZHJlc3MKICAgID09CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjEwNi0xMDcKICAgIC8vIGlmIG5vdF9jaXJjdWxhdGluZ18yID09IEdsb2JhbC56ZXJvX2FkZHJlc3MKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGJueiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMAogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDcKICAgIC8vIG9yIG5vdCBub3RfY2lyY3VsYXRpbmdfMi5pc19vcHRlZF9pbihhc3NldCkKICAgIGZyYW1lX2RpZyA0CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYnVyeSAxCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDExCgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfdHJ1ZUAxMDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA1CiAgICAvLyBVSW50NjQoMCkKICAgIGludGNfMCAvLyAwCiAgICBmcmFtZV9idXJ5IDEKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUAxMjoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEyCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICBmcmFtZV9kaWcgNQogICAgZ2xvYmFsIFplcm9BZGRyZXNzCiAgICA9PQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTItMTEzCiAgICAvLyBpZiBub3RfY2lyY3VsYXRpbmdfMyA9PSBHbG9iYWwuemVyb19hZGRyZXNzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBibnogYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTEzCiAgICAvLyBvciBub3Qgbm90X2NpcmN1bGF0aW5nXzMuaXNfb3B0ZWRfaW4oYXNzZXQpCiAgICBmcmFtZV9kaWcgNQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGJ1cnkgMQogICAgYm56IGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxNQoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X3RydWVAMTQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExMQogICAgLy8gVUludDY0KDApCiAgICBpbnRjXzAgLy8gMAoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X21lcmdlQDE2OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTcKICAgIC8vIGFzc2V0LnRvdGFsCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X3BhcmFtc19nZXQgQXNzZXRUb3RhbAogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTE4CiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIGZyYW1lX2RpZyAyCiAgICAtCiAgICAvLyBzbWFydF9jb250cmFjdHMvY2lyY3VsYXRpbmdfc3VwcGx5L2NvbnRyYWN0LnB5OjExNy0xMTkKICAgIC8vIGFzc2V0LnRvdGFsCiAgICAvLyAtIHJlc2VydmVfYmFsYW5jZQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICBmcmFtZV9kaWcgMAogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIwCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICBmcmFtZV9kaWcgMQogICAgLQogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTctMTIxCiAgICAvLyBhc3NldC50b3RhbAogICAgLy8gLSByZXNlcnZlX2JhbGFuY2UKICAgIC8vIC0gbm90X2NpcmN1bGF0aW5nX2JhbGFuY2VfMQogICAgLy8gLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAtIG5vdF9jaXJjdWxhdGluZ19iYWxhbmNlXzMKICAgIHN3YXAKICAgIC0KICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTE2LTEyMgogICAgLy8gcmV0dXJuICgKICAgIC8vICAgICBhc3NldC50b3RhbAogICAgLy8gICAgIC0gcmVzZXJ2ZV9iYWxhbmNlCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8xCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8yCiAgICAvLyAgICAgLSBub3RfY2lyY3VsYXRpbmdfYmFsYW5jZV8zCiAgICAvLyApCiAgICBmcmFtZV9idXJ5IDAKICAgIHJldHN1YgoKYXJjNjJfZ2V0X2NpcmN1bGF0aW5nX3N1cHBseV90ZXJuYXJ5X2ZhbHNlQDE1OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMTQKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMykKICAgIGZyYW1lX2RpZyA1CiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTYKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUAxMToKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6MTA4CiAgICAvLyBlbHNlIGFzc2V0LmJhbGFuY2Uobm90X2NpcmN1bGF0aW5nXzIpCiAgICBmcmFtZV9kaWcgNAogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMQogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VAMTIKCmFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9mYWxzZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2NpcmN1bGF0aW5nX3N1cHBseS9jb250cmFjdC5weToxMDIKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShub3RfY2lyY3VsYXRpbmdfMSkKICAgIGZyYW1lX2RpZyAzCiAgICBmcmFtZV9kaWcgLTEKICAgIGFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQogICAgYXNzZXJ0IC8vIGFjY291bnQgb3B0ZWQgaW50byBhc3NldAogICAgZnJhbWVfYnVyeSAwCiAgICBiIGFyYzYyX2dldF9jaXJjdWxhdGluZ19zdXBwbHlfdGVybmFyeV9tZXJnZUA4CgphcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfZmFsc2VAMzoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9jaXJjdWxhdGluZ19zdXBwbHkvY29udHJhY3QucHk6OTYKICAgIC8vIGVsc2UgYXNzZXQuYmFsYW5jZShhc3NldC5yZXNlcnZlKQogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9wYXJhbXNfZ2V0IEFzc2V0UmVzZXJ2ZQogICAgYXNzZXJ0IC8vIGFzc2V0IGV4aXN0cwogICAgZnJhbWVfZGlnIC0xCiAgICBhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKICAgIGFzc2VydCAvLyBhY2NvdW50IG9wdGVkIGludG8gYXNzZXQKICAgIGZyYW1lX2J1cnkgMgogICAgYiBhcmM2Ml9nZXRfY2lyY3VsYXRpbmdfc3VwcGx5X3Rlcm5hcnlfbWVyZ2VANAo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMSAvLyAxCiAgICByZXR1cm4K"}, "sourceInfo": {"approval": {"pcOffsetMethod": "none", "sourceInfo": [{"pc": [278], "errorMessage": "Invalid ASA ID"}, {"pc": [236], "errorMessage": "Invalid Label"}, {"pc": [222], "errorMessage": "Not Opted-In"}, {"pc": [96, 122, 143], "errorMessage": "OnCompletion is not NoOp"}, {"pc": [189, 214], "errorMessage": "Unauthorized"}, {"pc": [396, 406, 418, 433], "errorMessage": "account opted into asset"}, {"pc": [176, 212, 283, 294, 375, 428], "errorMessage": "asset exists"}, {"pc": [164], "errorMessage": "can only call when creating"}, {"pc": [99, 125, 146], "errorMessage": "can only call when not creating"}, {"pc": [184, 205, 274], "errorMessage": "check self.asset_id exists"}, {"pc": [262], "errorMessage": "check self.not_circulating_label_1 exists"}, {"pc": [266], "errorMessage": "check self.not_circulating_label_2 exists"}, {"pc": [270], "errorMessage": "check self.not_circulating_label_3 exists"}]}, "clear": {"pcOffsetMethod": "none", "sourceInfo": []}}, "templateVariables": {}}""" APP_SPEC = algokit_utils.Arc56Contract.from_json(_APP_SPEC_JSON) def _parse_abi_args(args: object | None = None) -> list[object] | None: diff --git a/assets/arc-0062/smart_contracts/circulating_supply/deploy_config.py b/assets/arc-0062/smart_contracts/circulating_supply/deploy_config.py deleted file mode 100644 index a20ba020b..000000000 --- a/assets/arc-0062/smart_contracts/circulating_supply/deploy_config.py +++ /dev/null @@ -1,24 +0,0 @@ -import logging - -import algokit_utils - -logger = logging.getLogger(__name__) - - -# define deployment behaviour based on supplied app spec -def deploy() -> None: - from smart_contracts.artifacts.circulating_supply.circulating_supply_client import ( - CirculatingSupplyFactory, - ) - - algorand = algokit_utils.AlgorandClient.from_environment() - deployer = algorand.account.from_environment("DEPLOYER") - - factory = algorand.client.get_typed_app_factory( - CirculatingSupplyFactory, default_sender=deployer.address - ) - - app_client, _ = factory.deploy( - on_schema_break=algokit_utils.OnSchemaBreak.AppendApp, - on_update=algokit_utils.OnUpdate.AppendApp, - ) diff --git a/assets/arc-0062/tests/conftest.py b/assets/arc-0062/tests/conftest.py index a9c2e9016..4f53ccddb 100644 --- a/assets/arc-0062/tests/conftest.py +++ b/assets/arc-0062/tests/conftest.py @@ -19,11 +19,12 @@ ) INITIAL_FUNDS: Final[AlgoAmount] = AlgoAmount.from_algo(100) -ASA_TOTAL = 1000 -RESERVE_BALANCE = 420 -NOT_CIRCULATING_BALANCE_1 = 69 -NOT_CIRCULATING_BALANCE_2 = 42 -NOT_CIRCULATING_BALANCE_3 = 4 +ASA_TOTAL: Final[int] = 1000 +RESERVE_BALANCE: Final[int] = 420 +NOT_CIRCULATING_BALANCE_1: Final[int] = 69 +NOT_CIRCULATING_BALANCE_2: Final[int] = 42 +NOT_CIRCULATING_BALANCE_3: Final[int] = 4 +APP_URI: Final[str] = "algorand://app/" @pytest.fixture(scope="session") @@ -132,6 +133,7 @@ def asset( asset_creator: SigningAccount, asset_manager: SigningAccount, asset_reserve: SigningAccount, + circulating_supply_client: CirculatingSupplyClient, ) -> int: return algorand.send.asset_create( AssetCreateParams( @@ -140,6 +142,7 @@ def asset( total=ASA_TOTAL, manager=asset_manager.address, reserve=asset_reserve.address, + url=APP_URI + str(circulating_supply_client.app_id), ) ).asset_id