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