{ "abi": [ { "inputs": [], "name": "decrementCounter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getCount", "outputs": [ { "internalType": "int256", "name": "", "type": "int256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "incrementCounter", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "evm": { "assembly": " /* \"Counter.sol\":57:318 contract Counter {... */\n mstore(0x40, 0x80)\n /* \"Counter.sol\":100:101 0 */\n 0x00\n /* \"Counter.sol\":80:101 int private count = 0 */\n dup1\n sstore\n /* \"Counter.sol\":57:318 contract Counter {... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"Counter.sol\":57:318 contract Counter {... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x5b34b966\n eq\n tag_3\n jumpi\n dup1\n 0xa87d942c\n eq\n tag_4\n jumpi\n dup1\n 0xf5c5ad83\n eq\n tag_5\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"Counter.sol\":107:169 function incrementCounter() public {... */\n tag_3:\n tag_6\n tag_7\n jump\t// in\n tag_6:\n stop\n /* \"Counter.sol\":241:316 function getCount() public view returns (int) {... */\n tag_4:\n tag_8\n tag_9\n jump\t// in\n tag_8:\n mload(0x40)\n tag_10\n swap2\n swap1\n tag_11\n jump\t// in\n tag_10:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"Counter.sol\":174:236 function decrementCounter() public {... */\n tag_5:\n tag_12\n tag_13\n jump\t// in\n tag_12:\n stop\n /* \"Counter.sol\":107:169 function incrementCounter() public {... */\n tag_7:\n /* \"Counter.sol\":161:162 1 */\n 0x01\n /* \"Counter.sol\":152:157 count */\n 0x00\n dup1\n /* \"Counter.sol\":152:162 count += 1 */\n dup3\n dup3\n sload\n tag_15\n swap2\n swap1\n tag_16\n jump\t// in\n tag_15:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"Counter.sol\":107:169 function incrementCounter() public {... */\n jump\t// out\n /* \"Counter.sol\":241:316 function getCount() public view returns (int) {... */\n tag_9:\n /* \"Counter.sol\":282:285 int */\n 0x00\n /* \"Counter.sol\":304:309 count */\n dup1\n sload\n /* \"Counter.sol\":297:309 return count */\n swap1\n pop\n /* \"Counter.sol\":241:316 function getCount() public view returns (int) {... */\n swap1\n jump\t// out\n /* \"Counter.sol\":174:236 function decrementCounter() public {... */\n tag_13:\n /* \"Counter.sol\":228:229 1 */\n 0x01\n /* \"Counter.sol\":219:224 count */\n 0x00\n dup1\n /* \"Counter.sol\":219:229 count -= 1 */\n dup3\n dup3\n sload\n tag_19\n swap2\n swap1\n tag_20\n jump\t// in\n tag_19:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"Counter.sol\":174:236 function decrementCounter() public {... */\n jump\t// out\n /* \"#utility.yul\":7:83 */\n tag_21:\n /* \"#utility.yul\":43:50 */\n 0x00\n /* \"#utility.yul\":72:77 */\n dup2\n /* \"#utility.yul\":61:77 */\n swap1\n pop\n /* \"#utility.yul\":7:83 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":89:204 */\n tag_22:\n /* \"#utility.yul\":174:197 */\n tag_27\n /* \"#utility.yul\":191:196 */\n dup2\n /* \"#utility.yul\":174:197 */\n tag_21\n jump\t// in\n tag_27:\n /* \"#utility.yul\":169:172 */\n dup3\n /* \"#utility.yul\":162:198 */\n mstore\n /* \"#utility.yul\":89:204 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":210:428 */\n tag_11:\n /* \"#utility.yul\":301:305 */\n 0x00\n /* \"#utility.yul\":339:341 */\n 0x20\n /* \"#utility.yul\":328:337 */\n dup3\n /* \"#utility.yul\":324:342 */\n add\n /* \"#utility.yul\":316:342 */\n swap1\n pop\n /* \"#utility.yul\":352:421 */\n tag_29\n /* \"#utility.yul\":418:419 */\n 0x00\n /* \"#utility.yul\":407:416 */\n dup4\n /* \"#utility.yul\":403:420 */\n add\n /* \"#utility.yul\":394:400 */\n dup5\n /* \"#utility.yul\":352:421 */\n tag_22\n jump\t// in\n tag_29:\n /* \"#utility.yul\":210:428 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":434:614 */\n tag_23:\n /* \"#utility.yul\":482:559 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":479:480 */\n 0x00\n /* \"#utility.yul\":472:560 */\n mstore\n /* \"#utility.yul\":579:583 */\n 0x11\n /* \"#utility.yul\":576:577 */\n 0x04\n /* \"#utility.yul\":569:584 */\n mstore\n /* \"#utility.yul\":603:607 */\n 0x24\n /* \"#utility.yul\":600:601 */\n 0x00\n /* \"#utility.yul\":593:608 */\n revert\n /* \"#utility.yul\":620:1145 */\n tag_16:\n /* \"#utility.yul\":659:662 */\n 0x00\n /* \"#utility.yul\":678:697 */\n tag_32\n /* \"#utility.yul\":695:696 */\n dup3\n /* \"#utility.yul\":678:697 */\n tag_21\n jump\t// in\n tag_32:\n /* \"#utility.yul\":673:697 */\n swap2\n pop\n /* \"#utility.yul\":711:730 */\n tag_33\n /* \"#utility.yul\":728:729 */\n dup4\n /* \"#utility.yul\":711:730 */\n tag_21\n jump\t// in\n tag_33:\n /* \"#utility.yul\":706:730 */\n swap3\n pop\n /* \"#utility.yul\":899:900 */\n dup2\n /* \"#utility.yul\":831:897 */\n 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":827:901 */\n sub\n /* \"#utility.yul\":824:825 */\n dup4\n /* \"#utility.yul\":820:902 */\n sgt\n /* \"#utility.yul\":815:816 */\n 0x00\n /* \"#utility.yul\":812:813 */\n dup4\n /* \"#utility.yul\":808:817 */\n slt\n /* \"#utility.yul\":801:818 */\n iszero\n /* \"#utility.yul\":797:903 */\n and\n /* \"#utility.yul\":794:926 */\n iszero\n tag_34\n jumpi\n /* \"#utility.yul\":906:924 */\n tag_35\n tag_23\n jump\t// in\n tag_35:\n /* \"#utility.yul\":794:926 */\n tag_34:\n /* \"#utility.yul\":1086:1087 */\n dup2\n /* \"#utility.yul\":1018:1084 */\n 0x8000000000000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1014:1088 */\n sub\n /* \"#utility.yul\":1011:1012 */\n dup4\n /* \"#utility.yul\":1007:1089 */\n slt\n /* \"#utility.yul\":1003:1004 */\n 0x00\n /* \"#utility.yul\":1000:1001 */\n dup4\n /* \"#utility.yul\":996:1005 */\n slt\n /* \"#utility.yul\":992:1090 */\n and\n /* \"#utility.yul\":989:1113 */\n iszero\n tag_36\n jumpi\n /* \"#utility.yul\":1093:1111 */\n tag_37\n tag_23\n jump\t// in\n tag_37:\n /* \"#utility.yul\":989:1113 */\n tag_36:\n /* \"#utility.yul\":1137:1138 */\n dup3\n /* \"#utility.yul\":1134:1135 */\n dup3\n /* \"#utility.yul\":1130:1139 */\n add\n /* \"#utility.yul\":1123:1139 */\n swap1\n pop\n /* \"#utility.yul\":620:1145 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1151:1678 */\n tag_20:\n /* \"#utility.yul\":1190:1194 */\n 0x00\n /* \"#utility.yul\":1210:1229 */\n tag_39\n /* \"#utility.yul\":1227:1228 */\n dup3\n /* \"#utility.yul\":1210:1229 */\n tag_21\n jump\t// in\n tag_39:\n /* \"#utility.yul\":1205:1229 */\n swap2\n pop\n /* \"#utility.yul\":1243:1262 */\n tag_40\n /* \"#utility.yul\":1260:1261 */\n dup4\n /* \"#utility.yul\":1243:1262 */\n tag_21\n jump\t// in\n tag_40:\n /* \"#utility.yul\":1238:1262 */\n swap3\n pop\n /* \"#utility.yul\":1432:1433 */\n dup3\n /* \"#utility.yul\":1364:1430 */\n 0x8000000000000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1360:1434 */\n add\n /* \"#utility.yul\":1357:1358 */\n dup3\n /* \"#utility.yul\":1353:1435 */\n slt\n /* \"#utility.yul\":1348:1349 */\n 0x00\n /* \"#utility.yul\":1345:1346 */\n dup5\n /* \"#utility.yul\":1341:1350 */\n slt\n /* \"#utility.yul\":1334:1351 */\n iszero\n /* \"#utility.yul\":1330:1436 */\n and\n /* \"#utility.yul\":1327:1459 */\n iszero\n tag_41\n jumpi\n /* \"#utility.yul\":1439:1457 */\n tag_42\n tag_23\n jump\t// in\n tag_42:\n /* \"#utility.yul\":1327:1459 */\n tag_41:\n /* \"#utility.yul\":1618:1619 */\n dup3\n /* \"#utility.yul\":1550:1616 */\n 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":1546:1620 */\n add\n /* \"#utility.yul\":1543:1544 */\n dup3\n /* \"#utility.yul\":1539:1621 */\n sgt\n /* \"#utility.yul\":1535:1536 */\n 0x00\n /* \"#utility.yul\":1532:1533 */\n dup5\n /* \"#utility.yul\":1528:1537 */\n slt\n /* \"#utility.yul\":1524:1622 */\n and\n /* \"#utility.yul\":1521:1645 */\n iszero\n tag_43\n jumpi\n /* \"#utility.yul\":1625:1643 */\n tag_44\n tag_23\n jump\t// in\n tag_44:\n /* \"#utility.yul\":1521:1645 */\n tag_43:\n /* \"#utility.yul\":1670:1671 */\n dup3\n /* \"#utility.yul\":1667:1668 */\n dup3\n /* \"#utility.yul\":1663:1672 */\n sub\n /* \"#utility.yul\":1655:1672 */\n swap1\n pop\n /* \"#utility.yul\":1151:1678 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220925a4145f151297d7a70a5ccdc4eacfea52853a79b3c66663f7c35ba4d1575d964736f6c634300080a0033\n}\n", "bytecode": { "functionDebugData": {}, "generatedSources": [], "linkReferences": {}, "object": "60806040526000805534801561001457600080fd5b50610278806100246000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80635b34b96614610046578063a87d942c14610050578063f5c5ad831461006e575b600080fd5b61004e610078565b005b610058610093565b60405161006591906100d0565b60405180910390f35b61007661009c565b005b600160008082825461008a919061011a565b92505081905550565b60008054905090565b60016000808282546100ae91906101ae565b92505081905550565b6000819050919050565b6100ca816100b7565b82525050565b60006020820190506100e560008301846100c1565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610125826100b7565b9150610130836100b7565b9250817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0383136000831215161561016b5761016a6100eb565b5b817f80000000000000000000000000000000000000000000000000000000000000000383126000831216156101a3576101a26100eb565b5b828201905092915050565b60006101b9826100b7565b91506101c4836100b7565b9250827f8000000000000000000000000000000000000000000000000000000000000000018212600084121516156101ff576101fe6100eb565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018213600084121615610237576102366100eb565b5b82820390509291505056fea2646970667358221220925a4145f151297d7a70a5ccdc4eacfea52853a79b3c66663f7c35ba4d1575d964736f6c634300080a0033", "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 SSTORE CALLVALUE DUP1 ISZERO PUSH2 0x14 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x278 DUP1 PUSH2 0x24 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5B34B966 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0xA87D942C EQ PUSH2 0x50 JUMPI DUP1 PUSH4 0xF5C5AD83 EQ PUSH2 0x6E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4E PUSH2 0x78 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x58 PUSH2 0x93 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x65 SWAP2 SWAP1 PUSH2 0xD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x76 PUSH2 0x9C JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP3 DUP3 SLOAD PUSH2 0x8A SWAP2 SWAP1 PUSH2 0x11A JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP3 DUP3 SLOAD PUSH2 0xAE SWAP2 SWAP1 PUSH2 0x1AE JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xCA DUP2 PUSH2 0xB7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xE5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xC1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x125 DUP3 PUSH2 0xB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x130 DUP4 PUSH2 0xB7 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP4 SGT PUSH1 0x0 DUP4 SLT ISZERO AND ISZERO PUSH2 0x16B JUMPI PUSH2 0x16A PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP2 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 SUB DUP4 SLT PUSH1 0x0 DUP4 SLT AND ISZERO PUSH2 0x1A3 JUMPI PUSH2 0x1A2 PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B9 DUP3 PUSH2 0xB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C4 DUP4 PUSH2 0xB7 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 ADD DUP3 SLT PUSH1 0x0 DUP5 SLT ISZERO AND ISZERO PUSH2 0x1FF JUMPI PUSH2 0x1FE PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ADD DUP3 SGT PUSH1 0x0 DUP5 SLT AND ISZERO PUSH2 0x237 JUMPI PUSH2 0x236 PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP3 GAS COINBASE GASLIMIT CALL MLOAD 0x29 PUSH30 0x7A70A5CCDC4EACFEA52853A79B3C66663F7C35BA4D1575D964736F6C6343 STOP ADDMOD EXP STOP CALLER ", "sourceMap": "57:261:0:-:0;;;100:1;80:21;;57:261;;;;;;;;;;;;;;;;" }, "deployedBytecode": { "functionDebugData": { "@decrementCounter_20": { "entryPoint": 156, "id": 20, "parameterSlots": 0, "returnSlots": 0 }, "@getCount_28": { "entryPoint": 147, "id": 28, "parameterSlots": 0, "returnSlots": 1 }, "@incrementCounter_12": { "entryPoint": 120, "id": 12, "parameterSlots": 0, "returnSlots": 0 }, "abi_encode_t_int256_to_t_int256_fromStack": { "entryPoint": 193, "id": null, "parameterSlots": 2, "returnSlots": 0 }, "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": { "entryPoint": 208, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "checked_add_t_int256": { "entryPoint": 282, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "checked_sub_t_int256": { "entryPoint": 430, "id": null, "parameterSlots": 2, "returnSlots": 1 }, "cleanup_t_int256": { "entryPoint": 183, "id": null, "parameterSlots": 1, "returnSlots": 1 }, "panic_error_0x11": { "entryPoint": 235, "id": null, "parameterSlots": 0, "returnSlots": 0 } }, "generatedSources": [ { "ast": { "nodeType": "YulBlock", "src": "0:1681:2", "statements": [ { "body": { "nodeType": "YulBlock", "src": "51:32:2", "statements": [ { "nodeType": "YulAssignment", "src": "61:16:2", "value": { "name": "value", "nodeType": "YulIdentifier", "src": "72:5:2" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", "src": "61:7:2" } ] } ] }, "name": "cleanup_t_int256", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "value", "nodeType": "YulTypedName", "src": "33:5:2", "type": "" } ], "returnVariables": [ { "name": "cleaned", "nodeType": "YulTypedName", "src": "43:7:2", "type": "" } ], "src": "7:76:2" }, { "body": { "nodeType": "YulBlock", "src": "152:52:2", "statements": [ { "expression": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", "src": "169:3:2" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", "src": "191:5:2" } ], "functionName": { "name": "cleanup_t_int256", "nodeType": "YulIdentifier", "src": "174:16:2" }, "nodeType": "YulFunctionCall", "src": "174:23:2" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "162:6:2" }, "nodeType": "YulFunctionCall", "src": "162:36:2" }, "nodeType": "YulExpressionStatement", "src": "162:36:2" } ] }, "name": "abi_encode_t_int256_to_t_int256_fromStack", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "value", "nodeType": "YulTypedName", "src": "140:5:2", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", "src": "147:3:2", "type": "" } ], "src": "89:115:2" }, { "body": { "nodeType": "YulBlock", "src": "306:122:2", "statements": [ { "nodeType": "YulAssignment", "src": "316:26:2", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", "src": "328:9:2" }, { "kind": "number", "nodeType": "YulLiteral", "src": "339:2:2", "type": "", "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "324:3:2" }, "nodeType": "YulFunctionCall", "src": "324:18:2" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", "src": "316:4:2" } ] }, { "expression": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", "src": "394:6:2" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", "src": "407:9:2" }, { "kind": "number", "nodeType": "YulLiteral", "src": "418:1:2", "type": "", "value": "0" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "403:3:2" }, "nodeType": "YulFunctionCall", "src": "403:17:2" } ], "functionName": { "name": "abi_encode_t_int256_to_t_int256_fromStack", "nodeType": "YulIdentifier", "src": "352:41:2" }, "nodeType": "YulFunctionCall", "src": "352:69:2" }, "nodeType": "YulExpressionStatement", "src": "352:69:2" } ] }, "name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", "src": "278:9:2", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", "src": "290:6:2", "type": "" } ], "returnVariables": [ { "name": "tail", "nodeType": "YulTypedName", "src": "301:4:2", "type": "" } ], "src": "210:218:2" }, { "body": { "nodeType": "YulBlock", "src": "462:152:2", "statements": [ { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "479:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", "src": "482:77:2", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "472:6:2" }, "nodeType": "YulFunctionCall", "src": "472:88:2" }, "nodeType": "YulExpressionStatement", "src": "472:88:2" }, { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "576:1:2", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", "src": "579:4:2", "type": "", "value": "0x11" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", "src": "569:6:2" }, "nodeType": "YulFunctionCall", "src": "569:15:2" }, "nodeType": "YulExpressionStatement", "src": "569:15:2" }, { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "600:1:2", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", "src": "603:4:2", "type": "", "value": "0x24" } ], "functionName": { "name": "revert", "nodeType": "YulIdentifier", "src": "593:6:2" }, "nodeType": "YulFunctionCall", "src": "593:15:2" }, "nodeType": "YulExpressionStatement", "src": "593:15:2" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", "src": "434:180:2" }, { "body": { "nodeType": "YulBlock", "src": "663:482:2", "statements": [ { "nodeType": "YulAssignment", "src": "673:24:2", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "695:1:2" } ], "functionName": { "name": "cleanup_t_int256", "nodeType": "YulIdentifier", "src": "678:16:2" }, "nodeType": "YulFunctionCall", "src": "678:19:2" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", "src": "673:1:2" } ] }, { "nodeType": "YulAssignment", "src": "706:24:2", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", "src": "728:1:2" } ], "functionName": { "name": "cleanup_t_int256", "nodeType": "YulIdentifier", "src": "711:16:2" }, "nodeType": "YulFunctionCall", "src": "711:19:2" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", "src": "706:1:2" } ] }, { "body": { "nodeType": "YulBlock", "src": "904:22:2", "statements": [ { "expression": { "arguments": [], "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", "src": "906:16:2" }, "nodeType": "YulFunctionCall", "src": "906:18:2" }, "nodeType": "YulExpressionStatement", "src": "906:18:2" } ] }, "condition": { "arguments": [ { "arguments": [ { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "812:1:2" }, { "kind": "number", "nodeType": "YulLiteral", "src": "815:1:2", "type": "", "value": "0" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", "src": "808:3:2" }, "nodeType": "YulFunctionCall", "src": "808:9:2" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", "src": "801:6:2" }, "nodeType": "YulFunctionCall", "src": "801:17:2" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", "src": "824:1:2" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "831:66:2", "type": "", "value": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "x", "nodeType": "YulIdentifier", "src": "899:1:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", "src": "827:3:2" }, "nodeType": "YulFunctionCall", "src": "827:74:2" } ], "functionName": { "name": "sgt", "nodeType": "YulIdentifier", "src": "820:3:2" }, "nodeType": "YulFunctionCall", "src": "820:82:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", "src": "797:3:2" }, "nodeType": "YulFunctionCall", "src": "797:106:2" }, "nodeType": "YulIf", "src": "794:132:2" }, { "body": { "nodeType": "YulBlock", "src": "1091:22:2", "statements": [ { "expression": { "arguments": [], "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", "src": "1093:16:2" }, "nodeType": "YulFunctionCall", "src": "1093:18:2" }, "nodeType": "YulExpressionStatement", "src": "1093:18:2" } ] }, "condition": { "arguments": [ { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1000:1:2" }, { "kind": "number", "nodeType": "YulLiteral", "src": "1003:1:2", "type": "", "value": "0" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", "src": "996:3:2" }, "nodeType": "YulFunctionCall", "src": "996:9:2" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", "src": "1011:1:2" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "1018:66:2", "type": "", "value": "0x8000000000000000000000000000000000000000000000000000000000000000" }, { "name": "x", "nodeType": "YulIdentifier", "src": "1086:1:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", "src": "1014:3:2" }, "nodeType": "YulFunctionCall", "src": "1014:74:2" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", "src": "1007:3:2" }, "nodeType": "YulFunctionCall", "src": "1007:82:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", "src": "992:3:2" }, "nodeType": "YulFunctionCall", "src": "992:98:2" }, "nodeType": "YulIf", "src": "989:124:2" }, { "nodeType": "YulAssignment", "src": "1123:16:2", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1134:1:2" }, { "name": "y", "nodeType": "YulIdentifier", "src": "1137:1:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "1130:3:2" }, "nodeType": "YulFunctionCall", "src": "1130:9:2" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", "src": "1123:3:2" } ] } ] }, "name": "checked_add_t_int256", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "x", "nodeType": "YulTypedName", "src": "650:1:2", "type": "" }, { "name": "y", "nodeType": "YulTypedName", "src": "653:1:2", "type": "" } ], "returnVariables": [ { "name": "sum", "nodeType": "YulTypedName", "src": "659:3:2", "type": "" } ], "src": "620:525:2" }, { "body": { "nodeType": "YulBlock", "src": "1195:483:2", "statements": [ { "nodeType": "YulAssignment", "src": "1205:24:2", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1227:1:2" } ], "functionName": { "name": "cleanup_t_int256", "nodeType": "YulIdentifier", "src": "1210:16:2" }, "nodeType": "YulFunctionCall", "src": "1210:19:2" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1205:1:2" } ] }, { "nodeType": "YulAssignment", "src": "1238:24:2", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", "src": "1260:1:2" } ], "functionName": { "name": "cleanup_t_int256", "nodeType": "YulIdentifier", "src": "1243:16:2" }, "nodeType": "YulFunctionCall", "src": "1243:19:2" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", "src": "1238:1:2" } ] }, { "body": { "nodeType": "YulBlock", "src": "1437:22:2", "statements": [ { "expression": { "arguments": [], "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", "src": "1439:16:2" }, "nodeType": "YulFunctionCall", "src": "1439:18:2" }, "nodeType": "YulExpressionStatement", "src": "1439:18:2" } ] }, "condition": { "arguments": [ { "arguments": [ { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", "src": "1345:1:2" }, { "kind": "number", "nodeType": "YulLiteral", "src": "1348:1:2", "type": "", "value": "0" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", "src": "1341:3:2" }, "nodeType": "YulFunctionCall", "src": "1341:9:2" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", "src": "1334:6:2" }, "nodeType": "YulFunctionCall", "src": "1334:17:2" }, { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1357:1:2" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "1364:66:2", "type": "", "value": "0x8000000000000000000000000000000000000000000000000000000000000000" }, { "name": "y", "nodeType": "YulIdentifier", "src": "1432:1:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "1360:3:2" }, "nodeType": "YulFunctionCall", "src": "1360:74:2" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", "src": "1353:3:2" }, "nodeType": "YulFunctionCall", "src": "1353:82:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", "src": "1330:3:2" }, "nodeType": "YulFunctionCall", "src": "1330:106:2" }, "nodeType": "YulIf", "src": "1327:132:2" }, { "body": { "nodeType": "YulBlock", "src": "1623:22:2", "statements": [ { "expression": { "arguments": [], "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", "src": "1625:16:2" }, "nodeType": "YulFunctionCall", "src": "1625:18:2" }, "nodeType": "YulExpressionStatement", "src": "1625:18:2" } ] }, "condition": { "arguments": [ { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", "src": "1532:1:2" }, { "kind": "number", "nodeType": "YulLiteral", "src": "1535:1:2", "type": "", "value": "0" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", "src": "1528:3:2" }, "nodeType": "YulFunctionCall", "src": "1528:9:2" }, { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1543:1:2" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "1550:66:2", "type": "", "value": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "y", "nodeType": "YulIdentifier", "src": "1618:1:2" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "1546:3:2" }, "nodeType": "YulFunctionCall", "src": "1546:74:2" } ], "functionName": { "name": "sgt", "nodeType": "YulIdentifier", "src": "1539:3:2" }, "nodeType": "YulFunctionCall", "src": "1539:82:2" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", "src": "1524:3:2" }, "nodeType": "YulFunctionCall", "src": "1524:98:2" }, "nodeType": "YulIf", "src": "1521:124:2" }, { "nodeType": "YulAssignment", "src": "1655:17:2", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", "src": "1667:1:2" }, { "name": "y", "nodeType": "YulIdentifier", "src": "1670:1:2" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", "src": "1663:3:2" }, "nodeType": "YulFunctionCall", "src": "1663:9:2" }, "variableNames": [ { "name": "diff", "nodeType": "YulIdentifier", "src": "1655:4:2" } ] } ] }, "name": "checked_sub_t_int256", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "x", "nodeType": "YulTypedName", "src": "1181:1:2", "type": "" }, { "name": "y", "nodeType": "YulTypedName", "src": "1184:1:2", "type": "" } ], "returnVariables": [ { "name": "diff", "nodeType": "YulTypedName", "src": "1190:4:2", "type": "" } ], "src": "1151:527:2" } ] }, "contents": "{\n\n function cleanup_t_int256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_int256_to_t_int256_fromStack(value, pos) {\n mstore(pos, cleanup_t_int256(value))\n }\n\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_int256_to_t_int256_fromStack(value0, add(headStart, 0))\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_int256(x, y) -> sum {\n x := cleanup_t_int256(x)\n y := cleanup_t_int256(y)\n\n // overflow, if x >= 0 and y > (maxValue - x)\n if and(iszero(slt(x, 0)), sgt(y, sub(0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n // underflow, if x < 0 and y < (minValue - x)\n if and(slt(x, 0), slt(y, sub(0x8000000000000000000000000000000000000000000000000000000000000000, x))) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function checked_sub_t_int256(x, y) -> diff {\n x := cleanup_t_int256(x)\n y := cleanup_t_int256(y)\n\n // underflow, if y >= 0 and x < (minValue + y)\n if and(iszero(slt(y, 0)), slt(x, add(0x8000000000000000000000000000000000000000000000000000000000000000, y))) { panic_error_0x11() }\n // overflow, if y < 0 and x > (maxValue + y)\n if and(slt(y, 0), sgt(x, add(0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y))) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n}\n", "id": 2, "language": "Yul", "name": "#utility.yul" } ], "immutableReferences": {}, "linkReferences": {}, "object": "608060405234801561001057600080fd5b50600436106100415760003560e01c80635b34b96614610046578063a87d942c14610050578063f5c5ad831461006e575b600080fd5b61004e610078565b005b610058610093565b60405161006591906100d0565b60405180910390f35b61007661009c565b005b600160008082825461008a919061011a565b92505081905550565b60008054905090565b60016000808282546100ae91906101ae565b92505081905550565b6000819050919050565b6100ca816100b7565b82525050565b60006020820190506100e560008301846100c1565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610125826100b7565b9150610130836100b7565b9250817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0383136000831215161561016b5761016a6100eb565b5b817f80000000000000000000000000000000000000000000000000000000000000000383126000831216156101a3576101a26100eb565b5b828201905092915050565b60006101b9826100b7565b91506101c4836100b7565b9250827f8000000000000000000000000000000000000000000000000000000000000000018212600084121516156101ff576101fe6100eb565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018213600084121615610237576102366100eb565b5b82820390509291505056fea2646970667358221220925a4145f151297d7a70a5ccdc4eacfea52853a79b3c66663f7c35ba4d1575d964736f6c634300080a0033", "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5B34B966 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0xA87D942C EQ PUSH2 0x50 JUMPI DUP1 PUSH4 0xF5C5AD83 EQ PUSH2 0x6E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4E PUSH2 0x78 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x58 PUSH2 0x93 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x65 SWAP2 SWAP1 PUSH2 0xD0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x76 PUSH2 0x9C JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP3 DUP3 SLOAD PUSH2 0x8A SWAP2 SWAP1 PUSH2 0x11A JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP3 DUP3 SLOAD PUSH2 0xAE SWAP2 SWAP1 PUSH2 0x1AE JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xCA DUP2 PUSH2 0xB7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xE5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xC1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x125 DUP3 PUSH2 0xB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x130 DUP4 PUSH2 0xB7 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP4 SGT PUSH1 0x0 DUP4 SLT ISZERO AND ISZERO PUSH2 0x16B JUMPI PUSH2 0x16A PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP2 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 SUB DUP4 SLT PUSH1 0x0 DUP4 SLT AND ISZERO PUSH2 0x1A3 JUMPI PUSH2 0x1A2 PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B9 DUP3 PUSH2 0xB7 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C4 DUP4 PUSH2 0xB7 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 ADD DUP3 SLT PUSH1 0x0 DUP5 SLT ISZERO AND ISZERO PUSH2 0x1FF JUMPI PUSH2 0x1FE PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ADD DUP3 SGT PUSH1 0x0 DUP5 SLT AND ISZERO PUSH2 0x237 JUMPI PUSH2 0x236 PUSH2 0xEB JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP3 GAS COINBASE GASLIMIT CALL MLOAD 0x29 PUSH30 0x7A70A5CCDC4EACFEA52853A79B3C66663F7C35BA4D1575D964736F6C6343 STOP ADDMOD EXP STOP CALLER ", "sourceMap": "57:261:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;107:62;;;:::i;:::-;;241:75;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;174:62;;;:::i;:::-;;107;161:1;152:5;;:10;;;;;;;:::i;:::-;;;;;;;;107:62::o;241:75::-;282:3;304:5;;297:12;;241:75;:::o;174:62::-;228:1;219:5;;:10;;;;;;;:::i;:::-;;;;;;;;174:62::o;7:76:2:-;43:7;72:5;61:16;;7:76;;;:::o;89:115::-;174:23;191:5;174:23;:::i;:::-;169:3;162:36;89:115;;:::o;210:218::-;301:4;339:2;328:9;324:18;316:26;;352:69;418:1;407:9;403:17;394:6;352:69;:::i;:::-;210:218;;;;:::o;434:180::-;482:77;479:1;472:88;579:4;576:1;569:15;603:4;600:1;593:15;620:525;659:3;678:19;695:1;678:19;:::i;:::-;673:24;;711:19;728:1;711:19;:::i;:::-;706:24;;899:1;831:66;827:74;824:1;820:82;815:1;812;808:9;801:17;797:106;794:132;;;906:18;;:::i;:::-;794:132;1086:1;1018:66;1014:74;1011:1;1007:82;1003:1;1000;996:9;992:98;989:124;;;1093:18;;:::i;:::-;989:124;1137:1;1134;1130:9;1123:16;;620:525;;;;:::o;1151:527::-;1190:4;1210:19;1227:1;1210:19;:::i;:::-;1205:24;;1243:19;1260:1;1243:19;:::i;:::-;1238:24;;1432:1;1364:66;1360:74;1357:1;1353:82;1348:1;1345;1341:9;1334:17;1330:106;1327:132;;;1439:18;;:::i;:::-;1327:132;1618:1;1550:66;1546:74;1543:1;1539:82;1535:1;1532;1528:9;1524:98;1521:124;;;1625:18;;:::i;:::-;1521:124;1670:1;1667;1663:9;1655:17;;1151:527;;;;:::o" }, "gasEstimates": { "creation": { "codeDepositCost": "126400", "executionCost": "5177", "totalCost": "131577" }, "external": { "decrementCounter()": "infinite", "getCount()": "2437", "incrementCounter()": "infinite" } }, "legacyAssembly": { ".code": [ { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "80" }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "40" }, { "begin": 57, "end": 318, "name": "MSTORE", "source": 0 }, { "begin": 100, "end": 101, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 80, "end": 101, "name": "DUP1", "source": 0 }, { "begin": 80, "end": 101, "name": "SSTORE", "source": 0 }, { "begin": 57, "end": 318, "name": "CALLVALUE", "source": 0 }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "ISZERO", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [tag]", "source": 0, "value": "1" }, { "begin": 57, "end": 318, "name": "JUMPI", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "REVERT", "source": 0 }, { "begin": 57, "end": 318, "name": "tag", "source": 0, "value": "1" }, { "begin": 57, "end": 318, "name": "JUMPDEST", "source": 0 }, { "begin": 57, "end": 318, "name": "POP", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH #[$]", "source": 0, "value": "0000000000000000000000000000000000000000000000000000000000000000" }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [$]", "source": 0, "value": "0000000000000000000000000000000000000000000000000000000000000000" }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 57, "end": 318, "name": "CODECOPY", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 57, "end": 318, "name": "RETURN", "source": 0 } ], ".data": { "0": { ".auxdata": "a2646970667358221220925a4145f151297d7a70a5ccdc4eacfea52853a79b3c66663f7c35ba4d1575d964736f6c634300080a0033", ".code": [ { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "80" }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "40" }, { "begin": 57, "end": 318, "name": "MSTORE", "source": 0 }, { "begin": 57, "end": 318, "name": "CALLVALUE", "source": 0 }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "ISZERO", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [tag]", "source": 0, "value": "1" }, { "begin": 57, "end": 318, "name": "JUMPI", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "REVERT", "source": 0 }, { "begin": 57, "end": 318, "name": "tag", "source": 0, "value": "1" }, { "begin": 57, "end": 318, "name": "JUMPDEST", "source": 0 }, { "begin": 57, "end": 318, "name": "POP", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "4" }, { "begin": 57, "end": 318, "name": "CALLDATASIZE", "source": 0 }, { "begin": 57, "end": 318, "name": "LT", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [tag]", "source": 0, "value": "2" }, { "begin": 57, "end": 318, "name": "JUMPI", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 57, "end": 318, "name": "CALLDATALOAD", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "E0" }, { "begin": 57, "end": 318, "name": "SHR", "source": 0 }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "5B34B966" }, { "begin": 57, "end": 318, "name": "EQ", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [tag]", "source": 0, "value": "3" }, { "begin": 57, "end": 318, "name": "JUMPI", "source": 0 }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "A87D942C" }, { "begin": 57, "end": 318, "name": "EQ", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [tag]", "source": 0, "value": "4" }, { "begin": 57, "end": 318, "name": "JUMPI", "source": 0 }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "F5C5AD83" }, { "begin": 57, "end": 318, "name": "EQ", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH [tag]", "source": 0, "value": "5" }, { "begin": 57, "end": 318, "name": "JUMPI", "source": 0 }, { "begin": 57, "end": 318, "name": "tag", "source": 0, "value": "2" }, { "begin": 57, "end": 318, "name": "JUMPDEST", "source": 0 }, { "begin": 57, "end": 318, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 57, "end": 318, "name": "DUP1", "source": 0 }, { "begin": 57, "end": 318, "name": "REVERT", "source": 0 }, { "begin": 107, "end": 169, "name": "tag", "source": 0, "value": "3" }, { "begin": 107, "end": 169, "name": "JUMPDEST", "source": 0 }, { "begin": 107, "end": 169, "name": "PUSH [tag]", "source": 0, "value": "6" }, { "begin": 107, "end": 169, "name": "PUSH [tag]", "source": 0, "value": "7" }, { "begin": 107, "end": 169, "name": "JUMP", "source": 0, "value": "[in]" }, { "begin": 107, "end": 169, "name": "tag", "source": 0, "value": "6" }, { "begin": 107, "end": 169, "name": "JUMPDEST", "source": 0 }, { "begin": 107, "end": 169, "name": "STOP", "source": 0 }, { "begin": 241, "end": 316, "name": "tag", "source": 0, "value": "4" }, { "begin": 241, "end": 316, "name": "JUMPDEST", "source": 0 }, { "begin": 241, "end": 316, "name": "PUSH [tag]", "source": 0, "value": "8" }, { "begin": 241, "end": 316, "name": "PUSH [tag]", "source": 0, "value": "9" }, { "begin": 241, "end": 316, "name": "JUMP", "source": 0, "value": "[in]" }, { "begin": 241, "end": 316, "name": "tag", "source": 0, "value": "8" }, { "begin": 241, "end": 316, "name": "JUMPDEST", "source": 0 }, { "begin": 241, "end": 316, "name": "PUSH", "source": 0, "value": "40" }, { "begin": 241, "end": 316, "name": "MLOAD", "source": 0 }, { "begin": 241, "end": 316, "name": "PUSH [tag]", "source": 0, "value": "10" }, { "begin": 241, "end": 316, "name": "SWAP2", "source": 0 }, { "begin": 241, "end": 316, "name": "SWAP1", "source": 0 }, { "begin": 241, "end": 316, "name": "PUSH [tag]", "source": 0, "value": "11" }, { "begin": 241, "end": 316, "name": "JUMP", "source": 0, "value": "[in]" }, { "begin": 241, "end": 316, "name": "tag", "source": 0, "value": "10" }, { "begin": 241, "end": 316, "name": "JUMPDEST", "source": 0 }, { "begin": 241, "end": 316, "name": "PUSH", "source": 0, "value": "40" }, { "begin": 241, "end": 316, "name": "MLOAD", "source": 0 }, { "begin": 241, "end": 316, "name": "DUP1", "source": 0 }, { "begin": 241, "end": 316, "name": "SWAP2", "source": 0 }, { "begin": 241, "end": 316, "name": "SUB", "source": 0 }, { "begin": 241, "end": 316, "name": "SWAP1", "source": 0 }, { "begin": 241, "end": 316, "name": "RETURN", "source": 0 }, { "begin": 174, "end": 236, "name": "tag", "source": 0, "value": "5" }, { "begin": 174, "end": 236, "name": "JUMPDEST", "source": 0 }, { "begin": 174, "end": 236, "name": "PUSH [tag]", "source": 0, "value": "12" }, { "begin": 174, "end": 236, "name": "PUSH [tag]", "source": 0, "value": "13" }, { "begin": 174, "end": 236, "name": "JUMP", "source": 0, "value": "[in]" }, { "begin": 174, "end": 236, "name": "tag", "source": 0, "value": "12" }, { "begin": 174, "end": 236, "name": "JUMPDEST", "source": 0 }, { "begin": 174, "end": 236, "name": "STOP", "source": 0 }, { "begin": 107, "end": 169, "name": "tag", "source": 0, "value": "7" }, { "begin": 107, "end": 169, "name": "JUMPDEST", "source": 0 }, { "begin": 161, "end": 162, "name": "PUSH", "source": 0, "value": "1" }, { "begin": 152, "end": 157, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 152, "end": 157, "name": "DUP1", "source": 0 }, { "begin": 152, "end": 162, "name": "DUP3", "source": 0 }, { "begin": 152, "end": 162, "name": "DUP3", "source": 0 }, { "begin": 152, "end": 162, "name": "SLOAD", "source": 0 }, { "begin": 152, "end": 162, "name": "PUSH [tag]", "source": 0, "value": "15" }, { "begin": 152, "end": 162, "name": "SWAP2", "source": 0 }, { "begin": 152, "end": 162, "name": "SWAP1", "source": 0 }, { "begin": 152, "end": 162, "name": "PUSH [tag]", "source": 0, "value": "16" }, { "begin": 152, "end": 162, "name": "JUMP", "source": 0, "value": "[in]" }, { "begin": 152, "end": 162, "name": "tag", "source": 0, "value": "15" }, { "begin": 152, "end": 162, "name": "JUMPDEST", "source": 0 }, { "begin": 152, "end": 162, "name": "SWAP3", "source": 0 }, { "begin": 152, "end": 162, "name": "POP", "source": 0 }, { "begin": 152, "end": 162, "name": "POP", "source": 0 }, { "begin": 152, "end": 162, "name": "DUP2", "source": 0 }, { "begin": 152, "end": 162, "name": "SWAP1", "source": 0 }, { "begin": 152, "end": 162, "name": "SSTORE", "source": 0 }, { "begin": 152, "end": 162, "name": "POP", "source": 0 }, { "begin": 107, "end": 169, "name": "JUMP", "source": 0, "value": "[out]" }, { "begin": 241, "end": 316, "name": "tag", "source": 0, "value": "9" }, { "begin": 241, "end": 316, "name": "JUMPDEST", "source": 0 }, { "begin": 282, "end": 285, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 304, "end": 309, "name": "DUP1", "source": 0 }, { "begin": 304, "end": 309, "name": "SLOAD", "source": 0 }, { "begin": 297, "end": 309, "name": "SWAP1", "source": 0 }, { "begin": 297, "end": 309, "name": "POP", "source": 0 }, { "begin": 241, "end": 316, "name": "SWAP1", "source": 0 }, { "begin": 241, "end": 316, "name": "JUMP", "source": 0, "value": "[out]" }, { "begin": 174, "end": 236, "name": "tag", "source": 0, "value": "13" }, { "begin": 174, "end": 236, "name": "JUMPDEST", "source": 0 }, { "begin": 228, "end": 229, "name": "PUSH", "source": 0, "value": "1" }, { "begin": 219, "end": 224, "name": "PUSH", "source": 0, "value": "0" }, { "begin": 219, "end": 224, "name": "DUP1", "source": 0 }, { "begin": 219, "end": 229, "name": "DUP3", "source": 0 }, { "begin": 219, "end": 229, "name": "DUP3", "source": 0 }, { "begin": 219, "end": 229, "name": "SLOAD", "source": 0 }, { "begin": 219, "end": 229, "name": "PUSH [tag]", "source": 0, "value": "19" }, { "begin": 219, "end": 229, "name": "SWAP2", "source": 0 }, { "begin": 219, "end": 229, "name": "SWAP1", "source": 0 }, { "begin": 219, "end": 229, "name": "PUSH [tag]", "source": 0, "value": "20" }, { "begin": 219, "end": 229, "name": "JUMP", "source": 0, "value": "[in]" }, { "begin": 219, "end": 229, "name": "tag", "source": 0, "value": "19" }, { "begin": 219, "end": 229, "name": "JUMPDEST", "source": 0 }, { "begin": 219, "end": 229, "name": "SWAP3", "source": 0 }, { "begin": 219, "end": 229, "name": "POP", "source": 0 }, { "begin": 219, "end": 229, "name": "POP", "source": 0 }, { "begin": 219, "end": 229, "name": "DUP2", "source": 0 }, { "begin": 219, "end": 229, "name": "SWAP1", "source": 0 }, { "begin": 219, "end": 229, "name": "SSTORE", "source": 0 }, { "begin": 219, "end": 229, "name": "POP", "source": 0 }, { "begin": 174, "end": 236, "name": "JUMP", "source": 0, "value": "[out]" }, { "begin": 7, "end": 83, "name": "tag", "source": 2, "value": "21" }, { "begin": 7, "end": 83, "name": "JUMPDEST", "source": 2 }, { "begin": 43, "end": 50, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 72, "end": 77, "name": "DUP2", "source": 2 }, { "begin": 61, "end": 77, "name": "SWAP1", "source": 2 }, { "begin": 61, "end": 77, "name": "POP", "source": 2 }, { "begin": 7, "end": 83, "name": "SWAP2", "source": 2 }, { "begin": 7, "end": 83, "name": "SWAP1", "source": 2 }, { "begin": 7, "end": 83, "name": "POP", "source": 2 }, { "begin": 7, "end": 83, "name": "JUMP", "source": 2, "value": "[out]" }, { "begin": 89, "end": 204, "name": "tag", "source": 2, "value": "22" }, { "begin": 89, "end": 204, "name": "JUMPDEST", "source": 2 }, { "begin": 174, "end": 197, "name": "PUSH [tag]", "source": 2, "value": "27" }, { "begin": 191, "end": 196, "name": "DUP2", "source": 2 }, { "begin": 174, "end": 197, "name": "PUSH [tag]", "source": 2, "value": "21" }, { "begin": 174, "end": 197, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 174, "end": 197, "name": "tag", "source": 2, "value": "27" }, { "begin": 174, "end": 197, "name": "JUMPDEST", "source": 2 }, { "begin": 169, "end": 172, "name": "DUP3", "source": 2 }, { "begin": 162, "end": 198, "name": "MSTORE", "source": 2 }, { "begin": 89, "end": 204, "name": "POP", "source": 2 }, { "begin": 89, "end": 204, "name": "POP", "source": 2 }, { "begin": 89, "end": 204, "name": "JUMP", "source": 2, "value": "[out]" }, { "begin": 210, "end": 428, "name": "tag", "source": 2, "value": "11" }, { "begin": 210, "end": 428, "name": "JUMPDEST", "source": 2 }, { "begin": 301, "end": 305, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 339, "end": 341, "name": "PUSH", "source": 2, "value": "20" }, { "begin": 328, "end": 337, "name": "DUP3", "source": 2 }, { "begin": 324, "end": 342, "name": "ADD", "source": 2 }, { "begin": 316, "end": 342, "name": "SWAP1", "source": 2 }, { "begin": 316, "end": 342, "name": "POP", "source": 2 }, { "begin": 352, "end": 421, "name": "PUSH [tag]", "source": 2, "value": "29" }, { "begin": 418, "end": 419, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 407, "end": 416, "name": "DUP4", "source": 2 }, { "begin": 403, "end": 420, "name": "ADD", "source": 2 }, { "begin": 394, "end": 400, "name": "DUP5", "source": 2 }, { "begin": 352, "end": 421, "name": "PUSH [tag]", "source": 2, "value": "22" }, { "begin": 352, "end": 421, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 352, "end": 421, "name": "tag", "source": 2, "value": "29" }, { "begin": 352, "end": 421, "name": "JUMPDEST", "source": 2 }, { "begin": 210, "end": 428, "name": "SWAP3", "source": 2 }, { "begin": 210, "end": 428, "name": "SWAP2", "source": 2 }, { "begin": 210, "end": 428, "name": "POP", "source": 2 }, { "begin": 210, "end": 428, "name": "POP", "source": 2 }, { "begin": 210, "end": 428, "name": "JUMP", "source": 2, "value": "[out]" }, { "begin": 434, "end": 614, "name": "tag", "source": 2, "value": "23" }, { "begin": 434, "end": 614, "name": "JUMPDEST", "source": 2 }, { "begin": 482, "end": 559, "name": "PUSH", "source": 2, "value": "4E487B7100000000000000000000000000000000000000000000000000000000" }, { "begin": 479, "end": 480, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 472, "end": 560, "name": "MSTORE", "source": 2 }, { "begin": 579, "end": 583, "name": "PUSH", "source": 2, "value": "11" }, { "begin": 576, "end": 577, "name": "PUSH", "source": 2, "value": "4" }, { "begin": 569, "end": 584, "name": "MSTORE", "source": 2 }, { "begin": 603, "end": 607, "name": "PUSH", "source": 2, "value": "24" }, { "begin": 600, "end": 601, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 593, "end": 608, "name": "REVERT", "source": 2 }, { "begin": 620, "end": 1145, "name": "tag", "source": 2, "value": "16" }, { "begin": 620, "end": 1145, "name": "JUMPDEST", "source": 2 }, { "begin": 659, "end": 662, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 678, "end": 697, "name": "PUSH [tag]", "source": 2, "value": "32" }, { "begin": 695, "end": 696, "name": "DUP3", "source": 2 }, { "begin": 678, "end": 697, "name": "PUSH [tag]", "source": 2, "value": "21" }, { "begin": 678, "end": 697, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 678, "end": 697, "name": "tag", "source": 2, "value": "32" }, { "begin": 678, "end": 697, "name": "JUMPDEST", "source": 2 }, { "begin": 673, "end": 697, "name": "SWAP2", "source": 2 }, { "begin": 673, "end": 697, "name": "POP", "source": 2 }, { "begin": 711, "end": 730, "name": "PUSH [tag]", "source": 2, "value": "33" }, { "begin": 728, "end": 729, "name": "DUP4", "source": 2 }, { "begin": 711, "end": 730, "name": "PUSH [tag]", "source": 2, "value": "21" }, { "begin": 711, "end": 730, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 711, "end": 730, "name": "tag", "source": 2, "value": "33" }, { "begin": 711, "end": 730, "name": "JUMPDEST", "source": 2 }, { "begin": 706, "end": 730, "name": "SWAP3", "source": 2 }, { "begin": 706, "end": 730, "name": "POP", "source": 2 }, { "begin": 899, "end": 900, "name": "DUP2", "source": 2 }, { "begin": 831, "end": 897, "name": "PUSH", "source": 2, "value": "7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" }, { "begin": 827, "end": 901, "name": "SUB", "source": 2 }, { "begin": 824, "end": 825, "name": "DUP4", "source": 2 }, { "begin": 820, "end": 902, "name": "SGT", "source": 2 }, { "begin": 815, "end": 816, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 812, "end": 813, "name": "DUP4", "source": 2 }, { "begin": 808, "end": 817, "name": "SLT", "source": 2 }, { "begin": 801, "end": 818, "name": "ISZERO", "source": 2 }, { "begin": 797, "end": 903, "name": "AND", "source": 2 }, { "begin": 794, "end": 926, "name": "ISZERO", "source": 2 }, { "begin": 794, "end": 926, "name": "PUSH [tag]", "source": 2, "value": "34" }, { "begin": 794, "end": 926, "name": "JUMPI", "source": 2 }, { "begin": 906, "end": 924, "name": "PUSH [tag]", "source": 2, "value": "35" }, { "begin": 906, "end": 924, "name": "PUSH [tag]", "source": 2, "value": "23" }, { "begin": 906, "end": 924, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 906, "end": 924, "name": "tag", "source": 2, "value": "35" }, { "begin": 906, "end": 924, "name": "JUMPDEST", "source": 2 }, { "begin": 794, "end": 926, "name": "tag", "source": 2, "value": "34" }, { "begin": 794, "end": 926, "name": "JUMPDEST", "source": 2 }, { "begin": 1086, "end": 1087, "name": "DUP2", "source": 2 }, { "begin": 1018, "end": 1084, "name": "PUSH", "source": 2, "value": "8000000000000000000000000000000000000000000000000000000000000000" }, { "begin": 1014, "end": 1088, "name": "SUB", "source": 2 }, { "begin": 1011, "end": 1012, "name": "DUP4", "source": 2 }, { "begin": 1007, "end": 1089, "name": "SLT", "source": 2 }, { "begin": 1003, "end": 1004, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 1000, "end": 1001, "name": "DUP4", "source": 2 }, { "begin": 996, "end": 1005, "name": "SLT", "source": 2 }, { "begin": 992, "end": 1090, "name": "AND", "source": 2 }, { "begin": 989, "end": 1113, "name": "ISZERO", "source": 2 }, { "begin": 989, "end": 1113, "name": "PUSH [tag]", "source": 2, "value": "36" }, { "begin": 989, "end": 1113, "name": "JUMPI", "source": 2 }, { "begin": 1093, "end": 1111, "name": "PUSH [tag]", "source": 2, "value": "37" }, { "begin": 1093, "end": 1111, "name": "PUSH [tag]", "source": 2, "value": "23" }, { "begin": 1093, "end": 1111, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 1093, "end": 1111, "name": "tag", "source": 2, "value": "37" }, { "begin": 1093, "end": 1111, "name": "JUMPDEST", "source": 2 }, { "begin": 989, "end": 1113, "name": "tag", "source": 2, "value": "36" }, { "begin": 989, "end": 1113, "name": "JUMPDEST", "source": 2 }, { "begin": 1137, "end": 1138, "name": "DUP3", "source": 2 }, { "begin": 1134, "end": 1135, "name": "DUP3", "source": 2 }, { "begin": 1130, "end": 1139, "name": "ADD", "source": 2 }, { "begin": 1123, "end": 1139, "name": "SWAP1", "source": 2 }, { "begin": 1123, "end": 1139, "name": "POP", "source": 2 }, { "begin": 620, "end": 1145, "name": "SWAP3", "source": 2 }, { "begin": 620, "end": 1145, "name": "SWAP2", "source": 2 }, { "begin": 620, "end": 1145, "name": "POP", "source": 2 }, { "begin": 620, "end": 1145, "name": "POP", "source": 2 }, { "begin": 620, "end": 1145, "name": "JUMP", "source": 2, "value": "[out]" }, { "begin": 1151, "end": 1678, "name": "tag", "source": 2, "value": "20" }, { "begin": 1151, "end": 1678, "name": "JUMPDEST", "source": 2 }, { "begin": 1190, "end": 1194, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 1210, "end": 1229, "name": "PUSH [tag]", "source": 2, "value": "39" }, { "begin": 1227, "end": 1228, "name": "DUP3", "source": 2 }, { "begin": 1210, "end": 1229, "name": "PUSH [tag]", "source": 2, "value": "21" }, { "begin": 1210, "end": 1229, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 1210, "end": 1229, "name": "tag", "source": 2, "value": "39" }, { "begin": 1210, "end": 1229, "name": "JUMPDEST", "source": 2 }, { "begin": 1205, "end": 1229, "name": "SWAP2", "source": 2 }, { "begin": 1205, "end": 1229, "name": "POP", "source": 2 }, { "begin": 1243, "end": 1262, "name": "PUSH [tag]", "source": 2, "value": "40" }, { "begin": 1260, "end": 1261, "name": "DUP4", "source": 2 }, { "begin": 1243, "end": 1262, "name": "PUSH [tag]", "source": 2, "value": "21" }, { "begin": 1243, "end": 1262, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 1243, "end": 1262, "name": "tag", "source": 2, "value": "40" }, { "begin": 1243, "end": 1262, "name": "JUMPDEST", "source": 2 }, { "begin": 1238, "end": 1262, "name": "SWAP3", "source": 2 }, { "begin": 1238, "end": 1262, "name": "POP", "source": 2 }, { "begin": 1432, "end": 1433, "name": "DUP3", "source": 2 }, { "begin": 1364, "end": 1430, "name": "PUSH", "source": 2, "value": "8000000000000000000000000000000000000000000000000000000000000000" }, { "begin": 1360, "end": 1434, "name": "ADD", "source": 2 }, { "begin": 1357, "end": 1358, "name": "DUP3", "source": 2 }, { "begin": 1353, "end": 1435, "name": "SLT", "source": 2 }, { "begin": 1348, "end": 1349, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 1345, "end": 1346, "name": "DUP5", "source": 2 }, { "begin": 1341, "end": 1350, "name": "SLT", "source": 2 }, { "begin": 1334, "end": 1351, "name": "ISZERO", "source": 2 }, { "begin": 1330, "end": 1436, "name": "AND", "source": 2 }, { "begin": 1327, "end": 1459, "name": "ISZERO", "source": 2 }, { "begin": 1327, "end": 1459, "name": "PUSH [tag]", "source": 2, "value": "41" }, { "begin": 1327, "end": 1459, "name": "JUMPI", "source": 2 }, { "begin": 1439, "end": 1457, "name": "PUSH [tag]", "source": 2, "value": "42" }, { "begin": 1439, "end": 1457, "name": "PUSH [tag]", "source": 2, "value": "23" }, { "begin": 1439, "end": 1457, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 1439, "end": 1457, "name": "tag", "source": 2, "value": "42" }, { "begin": 1439, "end": 1457, "name": "JUMPDEST", "source": 2 }, { "begin": 1327, "end": 1459, "name": "tag", "source": 2, "value": "41" }, { "begin": 1327, "end": 1459, "name": "JUMPDEST", "source": 2 }, { "begin": 1618, "end": 1619, "name": "DUP3", "source": 2 }, { "begin": 1550, "end": 1616, "name": "PUSH", "source": 2, "value": "7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" }, { "begin": 1546, "end": 1620, "name": "ADD", "source": 2 }, { "begin": 1543, "end": 1544, "name": "DUP3", "source": 2 }, { "begin": 1539, "end": 1621, "name": "SGT", "source": 2 }, { "begin": 1535, "end": 1536, "name": "PUSH", "source": 2, "value": "0" }, { "begin": 1532, "end": 1533, "name": "DUP5", "source": 2 }, { "begin": 1528, "end": 1537, "name": "SLT", "source": 2 }, { "begin": 1524, "end": 1622, "name": "AND", "source": 2 }, { "begin": 1521, "end": 1645, "name": "ISZERO", "source": 2 }, { "begin": 1521, "end": 1645, "name": "PUSH [tag]", "source": 2, "value": "43" }, { "begin": 1521, "end": 1645, "name": "JUMPI", "source": 2 }, { "begin": 1625, "end": 1643, "name": "PUSH [tag]", "source": 2, "value": "44" }, { "begin": 1625, "end": 1643, "name": "PUSH [tag]", "source": 2, "value": "23" }, { "begin": 1625, "end": 1643, "name": "JUMP", "source": 2, "value": "[in]" }, { "begin": 1625, "end": 1643, "name": "tag", "source": 2, "value": "44" }, { "begin": 1625, "end": 1643, "name": "JUMPDEST", "source": 2 }, { "begin": 1521, "end": 1645, "name": "tag", "source": 2, "value": "43" }, { "begin": 1521, "end": 1645, "name": "JUMPDEST", "source": 2 }, { "begin": 1670, "end": 1671, "name": "DUP3", "source": 2 }, { "begin": 1667, "end": 1668, "name": "DUP3", "source": 2 }, { "begin": 1663, "end": 1672, "name": "SUB", "source": 2 }, { "begin": 1655, "end": 1672, "name": "SWAP1", "source": 2 }, { "begin": 1655, "end": 1672, "name": "POP", "source": 2 }, { "begin": 1151, "end": 1678, "name": "SWAP3", "source": 2 }, { "begin": 1151, "end": 1678, "name": "SWAP2", "source": 2 }, { "begin": 1151, "end": 1678, "name": "POP", "source": 2 }, { "begin": 1151, "end": 1678, "name": "POP", "source": 2 }, { "begin": 1151, "end": 1678, "name": "JUMP", "source": 2, "value": "[out]" } ] } } }, "methodIdentifiers": { "decrementCounter()": "f5c5ad83", "getCount()": "a87d942c", "incrementCounter()": "5b34b966" } }, "ewasm": { "wasm": "" }, "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"decrementCounter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCount\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"incrementCounter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"Counter.sol\":\"Counter\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"Counter.sol\":{\"keccak256\":\"0x78956c9a63d9d9c889e933e60a46e59dd067c65f0fde1dceb9ddf92aa2ce964a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4093cf3c1f5e64e772ff2a355daacd6a4ca090a7ee8d115c8e9344baeb29dac9\",\"dweb:/ipfs/QmU2DKfTGiFWak3ztG2ABFfNtp5rf5Mc6ibjQnn2GLijFv\"]}},\"version\":1}", "storageLayout": { "storage": [ { "astId": 4, "contract": "Counter.sol:Counter", "label": "count", "offset": 0, "slot": "0", "type": "t_int256" } ], "types": { "t_int256": { "encoding": "inplace", "label": "int256", "numberOfBytes": "32" } } }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }