embark-area-51/test/fixtures/solc-output.json

3586 lines
126 KiB
JSON
Raw Normal View History

2018-08-07 19:26:39 +00:00
{
"contracts": {
"fixtures/cont.sol": {
"x": {
"abi": [
{
"constant": true,
"inputs": [
{
"name": "_foo",
"type": "int256"
},
{
"name": "_bar",
"type": "int256"
}
],
"name": "f",
"outputs": [
{
"name": "_addition",
"type": "int256"
}
],
"payable": false,
"stateMutability": "pure",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_bar",
"type": "int256"
}
],
"name": "h",
"outputs": [
{
"name": "_great",
"type": "bool"
}
],
"payable": false,
"stateMutability": "pure",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_number",
"type": "int256"
}
],
"name": "g",
"outputs": [
{
"name": "_multiplication",
"type": "int256"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"name": "_name",
"type": "string"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
}
],
"devdoc": {
"methods": {}
},
"evm": {
"assembly": " /* \"fixtures/cont.sol\":26:513 contract x {... */\n mstore(0x40, 0x80)\n /* \"fixtures/cont.sol\":71:131 constructor(string _name)... */\n callvalue\n /* \"--CODEGEN--\":8:17 */\n dup1\n /* \"--CODEGEN--\":5:7 */\n iszero\n tag_1\n jumpi\n /* \"--CODEGEN--\":30:31 */\n 0x0\n /* \"--CODEGEN--\":27:28 */\n dup1\n /* \"--CODEGEN--\":20:32 */\n revert\n /* \"--CODEGEN--\":5:7 */\ntag_1:\n /* \"fixtures/cont.sol\":71:131 constructor(string _name)... */\n pop\n mload(0x40)\n sub(codesize, bytecodeSize)\n dup1\n bytecodeSize\n dup4\n codecopy\n dup2\n add\n 0x40\n mstore\n dup1\n mload\n add\n /* \"fixtures/cont.sol\":114:126 name = _name */\n dup1\n mload\n tag_4\n swap1\n /* \"fixtures/cont.sol\":114:118 name */\n 0x1\n swap1\n /* \"fixtures/cont.sol\":114:126 name = _name */\n 0x20\n dup5\n add\n swap1\n jump\t// in(tag_5)\ntag_4:\n pop\n /* \"fixtures/cont.sol\":71:131 constructor(string _name)... */\n pop\n /* \"fixtures/cont.sol\":26:513 contract x {... */\n jump(tag_6)\ntag_5:\n dup3\n dup1\n sload\n 0x1\n dup2\n 0x1\n and\n iszero\n 0x100\n mul\n sub\n and\n 0x2\n swap1\n div\n swap1\n 0x0\n mstore\n keccak256(0x0, 0x20)\n swap1\n 0x1f\n add\n 0x20\n swap1\n div\n dup2\n add\n swap3\n dup3\n 0x1f\n lt\n tag_8\n jumpi\n dup1\n mload\n not(0xff)\n and\n dup4\n dup1\n add\n or\n dup6\n sstore\n jump(tag_10)\ntag_8:\n dup3\n dup1\n add\n 0x1\n add\n dup6\n sstore\n dup3\n iszero\n tag_10\n jumpi\n swap2\n dup3\n add\ntag_9:\n dup3\n dup2\n gt\n iszero\n tag_10\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x1\n add\n swap1\n jump(tag_9)\ntag_10:\n pop\n tag_11\n swap3\n swap2\n pop\n jump\t// in(tag_12)\ntag_11:\n pop\n swap1\n jump\t// out\ntag_12:\n tag_13\n swap2\n swap1\ntag_14:\n dup1\n dup3\n gt\n iszero\n tag_11\n jumpi\n 0x0\n dup2\n sstore\n 0x1\n add\n jump(tag_14)\ntag_13:\n swap1\n jump\t// out\ntag_6:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x0\n codecopy\n 0x0\n return\nstop\n\nsub_0: assembly {\n /* \"fixtures/cont.sol\":26:513 contract x {... */\n mstore(0x40, 0x80)\n jumpi(tag_1, lt(calldatasize, 0x4))\n and(div(calldataload(0x0), 0x100000000000000000000000000000000000000000000000000000000), 0xffffffff)\n 0xafdb4ea\n dup2\n eq\n tag_2\n jumpi\n dup1\n 0x1de69c5d\n eq\n tag_3\n jumpi\n dup1\n 0x7877b803\n eq\n tag_4\n jumpi\n tag_1:\n 0x0\n dup1\n revert\n /* \"fixtures/cont.sol\":257:361 function f(int _foo, int _bar)... */\n tag_2:\n callvalue\n /* \"--CODEGEN--\":8:17 */\n dup1\n /* \"--CODEGEN--\":5:7 */\n iszero\n tag_5\n jumpi\n /* \"--CODEGEN--\":30:31 */\n 0x0\n /* \"--CODEGEN--\":27:28 */\n dup1\n /* \"--CODEGEN--\":20:32 */\n revert\n /* \"--CODEGEN--\":5:7 */\n tag_5:\n pop\n /* \"fixtures/cont.sol\":257:361 function f(int _foo, int _bar)... */\n tag_6\n calldataload(0x4)\n calldataload(0x24)\n jump(tag_7)\n tag_6:\n 0x40\n dup1\n mload\n swap2\n dup3\n mstore\n mload\n swap1\n dup2\n swap1\n sub\n 0x20\n add\n swap1\n return\n /* \"fixtures/cont.sol\":365:511 function h(int _bar)... */\n tag_3:\n callvalue\n /* \"--CODEGEN--\":8:17 */\n dup1\n /* \"--CODEGEN--\":5:7 */\n iszero\n tag_8\n jumpi\n /* \"--CODEGEN--\":30:31 */\n 0x0\n /* \"--CODEGEN--\":27:28 */\n dup1\n /* \"--CODEGEN--\":20:32 */\n revert\n /* \"--CODEGEN--\":5:7 */\n tag_8:\n pop\n /* \"fixtures/cont.sol\":365:511 function h(int _bar)... */\n tag_9\n calldataload(0x4)\n jump(tag_10)\n tag_9:\n
"bytecode": {
"linkReferences": {},
"object": "608060405234801561001057600080fd5b506040516101ff3803806101ff83398101604052805101805161003a906001906020840190610041565b50506100dc565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061008257805160ff19168380011785556100af565b828001600101855582156100af579182015b828111156100af578251825591602001919060010190610094565b506100bb9291506100bf565b5090565b6100d991905b808211156100bb57600081556001016100c5565b90565b610114806100eb6000396000f30060806040526004361060525763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630afdb4ea811460575780631de69c5d1460815780637877b8031460aa575b600080fd5b348015606257600080fd5b50606f60043560243560bf565b60408051918252519081900360200190f35b348015608c57600080fd5b50609660043560c3565b604080519115158252519081900360200190f35b34801560b557600080fd5b50606f60043560dd565b0190565b6000601982131560d45750600160d8565b5060005b919050565b6000819055600502905600a165627a7a72305820c971638cd2dfd9d71494bc48be2f33478792088221c22c68af8f597223ada59c0029",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x1FF CODESIZE SUB DUP1 PUSH2 0x1FF DUP4 CODECOPY DUP2 ADD PUSH1 0x40 MSTORE DUP1 MLOAD ADD DUP1 MLOAD PUSH2 0x3A SWAP1 PUSH1 0x1 SWAP1 PUSH1 0x20 DUP5 ADD SWAP1 PUSH2 0x41 JUMP JUMPDEST POP POP PUSH2 0xDC JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH1 0x1 DUP2 PUSH1 0x1 AND ISZERO PUSH2 0x100 MUL SUB AND PUSH1 0x2 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH1 0x1F LT PUSH2 0x82 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0xAF JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0xAF JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0xAF JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x94 JUMP JUMPDEST POP PUSH2 0xBB SWAP3 SWAP2 POP PUSH2 0xBF JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH2 0xD9 SWAP2 SWAP1 JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0xBB JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xC5 JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH2 0x114 DUP1 PUSH2 0xEB PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN STOP PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH1 0x52 JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0xAFDB4EA DUP2 EQ PUSH1 0x57 JUMPI DUP1 PUSH4 0x1DE69C5D EQ PUSH1 0x81 JUMPI DUP1 PUSH4 0x7877B803 EQ PUSH1 0xAA JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH1 0x62 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x6F PUSH1 0x4 CALLDATALOAD PUSH1 0x24 CALLDATALOAD PUSH1 0xBF JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH1 0x8C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x96 PUSH1 0x4 CALLDATALOAD PUSH1 0xC3 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 ISZERO ISZERO DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH1 0xB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x6F PUSH1 0x4 CALLDATALOAD PUSH1 0xDD JUMP JUMPDEST ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x19 DUP3 SGT ISZERO PUSH1 0xD4 JUMPI POP PUSH1 0x1 PUSH1 0xD8 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 SSTORE PUSH1 0x5 MUL SWAP1 JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xc9 PUSH18 0x638CD2DFD9D71494BC48BE2F334787920882 0x21 0xc2 0x2c PUSH9 0xAF8F597223ADA59C00 0x29 ",
"sourceMap": "26:487:0:-;;;71:60;8:9:-1;5:2;;;30:1;27;20:12;5:2;71:60:0;;;;;;;;;;;;;;;;;114:12;;;;:4;;:12;;;;;:::i;:::-;;71:60;26:487;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;26:487:0;;;-1:-1:-1;26:487:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;"
},
"deployedBytecode": {
"linkReferences": {},
"object": "60806040526004361060525763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630afdb4ea811460575780631de69c5d1460815780637877b8031460aa575b600080fd5b348015606257600080fd5b50606f60043560243560bf565b60408051918252519081900360200190f35b348015608c57600080fd5b50609660043560c3565b604080519115158252519081900360200190f35b34801560b557600080fd5b50606f60043560dd565b0190565b6000601982131560d45750600160d8565b5060005b919050565b6000819055600502905600a165627a7a72305820c971638cd2dfd9d71494bc48be2f33478792088221c22c68af8f597223ada59c0029",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH1 0x52 JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0xAFDB4EA DUP2 EQ PUSH1 0x57 JUMPI DUP1 PUSH4 0x1DE69C5D EQ PUSH1 0x81 JUMPI DUP1 PUSH4 0x7877B803 EQ PUSH1 0xAA JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH1 0x62 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x6F PUSH1 0x4 CALLDATALOAD PUSH1 0x24 CALLDATALOAD PUSH1 0xBF JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH1 0x8C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x96 PUSH1 0x4 CALLDATALOAD PUSH1 0xC3 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 ISZERO ISZERO DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH1 0xB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x6F PUSH1 0x4 CALLDATALOAD PUSH1 0xDD JUMP JUMPDEST ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x19 DUP3 SGT ISZERO PUSH1 0xD4 JUMPI POP PUSH1 0x1 PUSH1 0xD8 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 SSTORE PUSH1 0x5 MUL SWAP1 JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xc9 PUSH18 0x638CD2DFD9D71494BC48BE2F334787920882 0x21 0xc2 0x2c PUSH9 0xAF8F597223ADA59C00 0x29 ",
"sourceMap": "26:487:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;257:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;257:104:0;;;;;;;;;;;;;;;;;;;;;;;365:146;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;365:146:0;;;;;;;;;;;;;;;;;;;;;;;135:118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;135:118:0;;;;;257:104;345:11;;257:104::o;365:146::-;413:11;444:2;437:4;:9;434:73;;;-1:-1:-1;463:4:0;456:11;;434:73;-1:-1:-1;495:5:0;434:73;365:146;;;:::o;135:118::-;179:19;208:16;;;247:1;237:11;;135:118::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "55200",
"executionCost": "infinite",
"totalCost": "infinite"
},
"external": {
"f(int256,int256)": "196",
"g(int256)": "20248",
"h(int256)": "265"
}
},
"legacyAssembly": {
".code": [
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "80"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "40"
},
{
"begin": 26,
"end": 513,
"name": "MSTORE"
},
{
"begin": 71,
"end": 131,
"name": "CALLVALUE"
},
{
"begin": 8,
"end": 17,
"name": "DUP1"
},
{
"begin": 5,
"end": 7,
"name": "ISZERO"
},
{
"begin": 5,
"end": 7,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 5,
"end": 7,
"name": "JUMPI"
},
{
"begin": 30,
"end": 31,
"name": "PUSH",
"value": "0"
},
{
"begin": 27,
"end": 28,
"name": "DUP1"
},
{
"begin": 20,
"end": 32,
"name": "REVERT"
},
{
"begin": 5,
"end": 7,
"name": "tag",
"value": "1"
},
{
"begin": 5,
"end": 7,
"name": "JUMPDEST"
},
{
"begin": 71,
"end": 131,
"name": "POP"
},
{
"begin": 71,
"end": 131,
"name": "PUSH",
"value": "40"
},
{
"begin": 71,
"end": 131,
"name": "MLOAD"
},
{
"begin": 71,
"end": 131,
"name": "PUSHSIZE"
},
{
"begin": 71,
"end": 131,
"name": "CODESIZE"
},
{
"begin": 71,
"end": 131,
"name": "SUB"
},
{
"begin": 71,
"end": 131,
"name": "DUP1"
},
{
"begin": 71,
"end": 131,
"name": "PUSHSIZE"
},
{
"begin": 71,
"end": 131,
"name": "DUP4"
},
{
"begin": 71,
"end": 131,
"name": "CODECOPY"
},
{
"begin": 71,
"end": 131,
"name": "DUP2"
},
{
"begin": 71,
"end": 131,
"name": "ADD"
},
{
"begin": 71,
"end": 131,
"name": "PUSH",
"value": "40"
},
{
"begin": 71,
"end": 131,
"name": "MSTORE"
},
{
"begin": 71,
"end": 131,
"name": "DUP1"
},
{
"begin": 71,
"end": 131,
"name": "MLOAD"
},
{
"begin": 71,
"end": 131,
"name": "ADD"
},
{
"begin": 114,
"end": 126,
"name": "DUP1"
},
{
"begin": 114,
"end": 126,
"name": "MLOAD"
},
{
"begin": 114,
"end": 126,
"name": "PUSH [tag]",
"value": "4"
},
{
"begin": 114,
"end": 126,
"name": "SWAP1"
},
{
"begin": 114,
"end": 118,
"name": "PUSH",
"value": "1"
},
{
"begin": 114,
"end": 118,
"name": "SWAP1"
},
{
"begin": 114,
"end": 126,
"name": "PUSH",
"value": "20"
},
{
"begin": 114,
"end": 126,
"name": "DUP5"
},
{
"begin": 114,
"end": 126,
"name": "ADD"
},
{
"begin": 114,
"end": 126,
"name": "SWAP1"
},
{
"begin": 114,
"end": 126,
"name": "PUSH [tag]",
"value": "5"
},
{
"begin": 114,
"end": 126,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 114,
"end": 126,
"name": "tag",
"value": "4"
},
{
"begin": 114,
"end": 126,
"name": "JUMPDEST"
},
{
"begin": 114,
"end": 126,
"name": "POP"
},
{
"begin": 71,
"end": 131,
"name": "POP"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 26,
"end": 513,
"name": "JUMP"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "5"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "SLOAD"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "DUP2"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "AND"
},
{
"begin": 26,
"end": 513,
"name": "ISZERO"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "100"
},
{
"begin": 26,
"end": 513,
"name": "MUL"
},
{
"begin": 26,
"end": 513,
"name": "SUB"
},
{
"begin": 26,
"end": 513,
"name": "AND"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "2"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "DIV"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "MSTORE"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "20"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "KECCAK256"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1F"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "20"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "DIV"
},
{
"begin": 26,
"end": 513,
"name": "DUP2"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "SWAP3"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1F"
},
{
"begin": 26,
"end": 513,
"name": "LT"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "MLOAD"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "FF"
},
{
"begin": 26,
"end": 513,
"name": "NOT"
},
{
"begin": 26,
"end": 513,
"name": "AND"
},
{
"begin": 26,
"end": 513,
"name": "DUP4"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "OR"
},
{
"begin": 26,
"end": 513,
"name": "DUP6"
},
{
"begin": 26,
"end": 513,
"name": "SSTORE"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "10"
},
{
"begin": 26,
"end": 513,
"name": "JUMP"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "8"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "DUP6"
},
{
"begin": 26,
"end": 513,
"name": "SSTORE"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "ISZERO"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "10"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "SWAP2"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "9"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "DUP2"
},
{
"begin": 26,
"end": 513,
"name": "GT"
},
{
"begin": 26,
"end": 513,
"name": "ISZERO"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "10"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "MLOAD"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "SSTORE"
},
{
"begin": 26,
"end": 513,
"name": "SWAP2"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "20"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "SWAP2"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "9"
},
{
"begin": 26,
"end": 513,
"name": "JUMP"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "10"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 26,
"end": 513,
"name": "SWAP3"
},
{
"begin": 26,
"end": 513,
"name": "SWAP2"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "12"
},
{
"begin": 26,
"end": 513,
"name": "JUMP",
"value": "[in]"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "11"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "POP"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "12"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 26,
"end": 513,
"name": "SWAP2"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "14"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "DUP3"
},
{
"begin": 26,
"end": 513,
"name": "GT"
},
{
"begin": 26,
"end": 513,
"name": "ISZERO"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "DUP2"
},
{
"begin": 26,
"end": 513,
"name": "SSTORE"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "ADD"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "14"
},
{
"begin": 26,
"end": 513,
"name": "JUMP"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "13"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "SWAP1"
},
{
"begin": 26,
"end": 513,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "6"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "PUSH #[$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [$]",
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "CODECOPY"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "RETURN"
}
],
".data": {
"0": {
".auxdata": "a165627a7a72305820c971638cd2dfd9d71494bc48be2f33478792088221c22c68af8f597223ada59c0029",
".code": [
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "80"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "40"
},
{
"begin": 26,
"end": 513,
"name": "MSTORE"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "4"
},
{
"begin": 26,
"end": 513,
"name": "CALLDATASIZE"
},
{
"begin": 26,
"end": 513,
"name": "LT"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "FFFFFFFF"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "CALLDATALOAD"
},
{
"begin": 26,
"end": 513,
"name": "DIV"
},
{
"begin": 26,
"end": 513,
"name": "AND"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "AFDB4EA"
},
{
"begin": 26,
"end": 513,
"name": "DUP2"
},
{
"begin": 26,
"end": 513,
"name": "EQ"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "2"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "1DE69C5D"
},
{
"begin": 26,
"end": 513,
"name": "EQ"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "3"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "7877B803"
},
{
"begin": 26,
"end": 513,
"name": "EQ"
},
{
"begin": 26,
"end": 513,
"name": "PUSH [tag]",
"value": "4"
},
{
"begin": 26,
"end": 513,
"name": "JUMPI"
},
{
"begin": 26,
"end": 513,
"name": "tag",
"value": "1"
},
{
"begin": 26,
"end": 513,
"name": "JUMPDEST"
},
{
"begin": 26,
"end": 513,
"name": "PUSH",
"value": "0"
},
{
"begin": 26,
"end": 513,
"name": "DUP1"
},
{
"begin": 26,
"end": 513,
"name": "REVERT"
},
{
"begin": 257,
"end": 361,
"name": "tag",
"value": "2"
},
{
"begin": 257,
"end": 361,
"name": "JUMPDEST"
},
{
"begin": 257,
"end": 361,
"name": "CALLVALUE"
},
{
"begin": 8,
"end": 17,
"name": "DUP1"
},
{
"begin": 5,
"end": 7,
"name": "ISZERO"
},
{
"begin": 5,
"end": 7,
"name": "PUSH [tag]",
"value": "5"
},
{
"begin": 5,
"end": 7,
"name": "JUMPI"
},
{
"begin": 30,
"end": 31,
"name": "PUSH",
"value": "0"
},
{
"begin": 27,
"end": 28,
"name": "DUP1"
},
{
"begin": 20,
"end": 32,
"name": "REVERT"
},
{
"begin": 5,
"end": 7,
"name": "tag",
"value": "5"
},
{
"begin": 5,
"end": 7,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 257,
"end": 361,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 257,
"end": 361,
"name": "PUSH",
"value": "4"
},
{
"begin": 257,
"end": 361,
"name": "CALLDATALOAD"
},
{
"begin": 257,
"end": 361,
"name": "PUSH",
"value": "24"
},
{
"begin": 257,
"end": 361,
"name": "CALLDATALOAD"
},
{
"begin": 257,
"end": 361,
"name": "PUSH [tag]",
"value": "7"
},
{
"begin": 257,
"end": 361,
"name": "JUMP"
},
{
"begin": 257,
"end": 361,
"name": "tag",
"value": "6"
},
{
"begin": 257,
"end": 361,
"name": "JUMPDEST"
},
{
"begin": 257,
"end": 361,
"name": "PUSH",
"value": "40"
},
{
"begin": 257,
"end": 361,
"name": "DUP1"
},
{
"begin": 257,
"end": 361,
"name": "MLOAD"
},
{
"begin": 257,
"end": 361,
"name": "SWAP2"
},
{
"begin": 257,
"end": 361,
"name": "DUP3"
},
{
"begin": 257,
"end": 361,
"name": "MSTORE"
},
{
"begin": 257,
"end": 361,
"name": "MLOAD"
},
{
"begin": 257,
"end": 361,
"name": "SWAP1"
},
{
"begin": 257,
"end": 361,
"name": "DUP2"
},
{
"begin": 257,
"end": 361,
"name": "SWAP1"
},
{
"begin": 257,
"end": 361,
"name": "SUB"
},
{
"begin": 257,
"end": 361,
"name": "PUSH",
"value": "20"
},
{
"begin": 257,
"end": 361,
"name": "ADD"
},
{
"begin": 257,
"end": 361,
"name": "SWAP1"
},
{
"begin": 257,
"end": 361,
"name": "RETURN"
},
{
"begin": 365,
"end": 511,
"name": "tag",
"value": "3"
},
{
"begin": 365,
"end": 511,
"name": "JUMPDEST"
},
{
"begin": 365,
"end": 511,
"name": "CALLVALUE"
},
{
"begin": 8,
"end": 17,
"name": "DUP1"
},
{
"begin": 5,
"end": 7,
"name": "ISZERO"
},
{
"begin": 5,
"end": 7,
"name": "PUSH [tag]",
"value": "8"
},
{
"begin": 5,
"end": 7,
"name": "JUMPI"
},
{
"begin": 30,
"end": 31,
"name": "PUSH",
"value": "0"
},
{
"begin": 27,
"end": 28,
"name": "DUP1"
},
{
"begin": 20,
"end": 32,
"name": "REVERT"
},
{
"begin": 5,
"end": 7,
"name": "tag",
"value": "8"
},
{
"begin": 5,
"end": 7,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 365,
"end": 511,
"name": "PUSH [tag]",
"value": "9"
},
{
"begin": 365,
"end": 511,
"name": "PUSH",
"value": "4"
},
{
"begin": 365,
"end": 511,
"name": "CALLDATALOAD"
},
{
"begin": 365,
"end": 511,
"name": "PUSH [tag]",
"value": "10"
},
{
"begin": 365,
"end": 511,
"name": "JUMP"
},
{
"begin": 365,
"end": 511,
"name": "tag",
"value": "9"
},
{
"begin": 365,
"end": 511,
"name": "JUMPDEST"
},
{
"begin": 365,
"end": 511,
"name": "PUSH",
"value": "40"
},
{
"begin": 365,
"end": 511,
"name": "DUP1"
},
{
"begin": 365,
"end": 511,
"name": "MLOAD"
},
{
"begin": 365,
"end": 511,
"name": "SWAP2"
},
{
"begin": 365,
"end": 511,
"name": "ISZERO"
},
{
"begin": 365,
"end": 511,
"name": "ISZERO"
},
{
"begin": 365,
"end": 511,
"name": "DUP3"
},
{
"begin": 365,
"end": 511,
"name": "MSTORE"
},
{
"begin": 365,
"end": 511,
"name": "MLOAD"
},
{
"begin": 365,
"end": 511,
"name": "SWAP1"
},
{
"begin": 365,
"end": 511,
"name": "DUP2"
},
{
"begin": 365,
"end": 511,
"name": "SWAP1"
},
{
"begin": 365,
"end": 511,
"name": "SUB"
},
{
"begin": 365,
"end": 511,
"name": "PUSH",
"value": "20"
},
{
"begin": 365,
"end": 511,
"name": "ADD"
},
{
"begin": 365,
"end": 511,
"name": "SWAP1"
},
{
"begin": 365,
"end": 511,
"name": "RETURN"
},
{
"begin": 135,
"end": 253,
"name": "tag",
"value": "4"
},
{
"begin": 135,
"end": 253,
"name": "JUMPDEST"
},
{
"begin": 135,
"end": 253,
"name": "CALLVALUE"
},
{
"begin": 8,
"end": 17,
"name": "DUP1"
},
{
"begin": 5,
"end": 7,
"name": "ISZERO"
},
{
"begin": 5,
"end": 7,
"name": "PUSH [tag]",
"value": "11"
},
{
"begin": 5,
"end": 7,
"name": "JUMPI"
},
{
"begin": 30,
"end": 31,
"name": "PUSH",
"value": "0"
},
{
"begin": 27,
"end": 28,
"name": "DUP1"
},
{
"begin": 20,
"end": 32,
"name": "REVERT"
},
{
"begin": 5,
"end": 7,
"name": "tag",
"value": "11"
},
{
"begin": 5,
"end": 7,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 135,
"end": 253,
"name": "PUSH [tag]",
"value": "6"
},
{
"begin": 135,
"end": 253,
"name": "PUSH",
"value": "4"
},
{
"begin": 135,
"end": 253,
"name": "CALLDATALOAD"
},
{
"begin": 135,
"end": 253,
"name": "PUSH [tag]",
"value": "13"
},
{
"begin": 135,
"end": 253,
"name": "JUMP"
},
{
"begin": 257,
"end": 361,
"name": "tag",
"value": "7"
},
{
"begin": 257,
"end": 361,
"name": "JUMPDEST"
},
{
"begin": 345,
"end": 356,
"name": "ADD"
},
{
"begin": 345,
"end": 356,
"name": "SWAP1"
},
{
"begin": 257,
"end": 361,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 365,
"end": 511,
"name": "tag",
"value": "10"
},
{
"begin": 365,
"end": 511,
"name": "JUMPDEST"
},
{
"begin": 413,
"end": 424,
"name": "PUSH",
"value": "0"
},
{
"begin": 444,
"end": 446,
"name": "PUSH",
"value": "19"
},
{
"begin": 437,
"end": 441,
"name": "DUP3"
},
{
"begin": 437,
"end": 446,
"name": "SGT"
},
{
"begin": 434,
"end": 507,
"name": "ISZERO"
},
{
"begin": 434,
"end": 507,
"name": "PUSH [tag]",
"value": "16"
},
{
"begin": 434,
"end": 507,
"name": "JUMPI"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 463,
"end": 467,
"name": "PUSH",
"value": "1"
},
{
"begin": 456,
"end": 467,
"name": "PUSH [tag]",
"value": "17"
},
{
"begin": 456,
"end": 467,
"name": "JUMP"
},
{
"begin": 434,
"end": 507,
"name": "tag",
"value": "16"
},
{
"begin": 434,
"end": 507,
"name": "JUMPDEST"
},
{
"begin": -1,
"end": -1,
"name": "POP"
},
{
"begin": 495,
"end": 500,
"name": "PUSH",
"value": "0"
},
{
"begin": 434,
"end": 507,
"name": "tag",
"value": "17"
},
{
"begin": 434,
"end": 507,
"name": "JUMPDEST"
},
{
"begin": 365,
"end": 511,
"name": "SWAP2"
},
{
"begin": 365,
"end": 511,
"name": "SWAP1"
},
{
"begin": 365,
"end": 511,
"name": "POP"
},
{
"begin": 365,
"end": 511,
"name": "JUMP",
"value": "[out]"
},
{
"begin": 135,
"end": 253,
"name": "tag",
"value": "13"
},
{
"begin": 135,
"end": 253,
"name": "JUMPDEST"
},
{
"begin": 179,
"end": 198,
"name": "PUSH",
"value": "0"
},
{
"begin": 208,
"end": 224,
"name": "DUP2"
},
{
"begin": 208,
"end": 224,
"name": "SWAP1"
},
{
"begin": 208,
"end": 224,
"name": "SSTORE"
},
{
"begin": 247,
"end": 248,
"name": "PUSH",
"value": "5"
},
{
"begin": 237,
"end": 248,
"name": "MUL"
},
{
"begin": 237,
"end": 248,
"name": "SWAP1"
},
{
"begin": 135,
"end": 253,
"name": "JUMP",
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"f(int256,int256)": "0afdb4ea",
"g(int256)": "7877b803",
"h(int256)": "1de69c5d"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"name\":\"_foo\",\"type\":\"int256\"},{\"name\":\"_bar\",\"type\":\"int256\"}],\"name\":\"f\",\"outputs\":[{\"name\":\"_addition\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_bar\",\"type\":\"int256\"}],\"name\":\"h\",\"outputs\":[{\"name\":\"_great\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_number\",\"type\":\"int256\"}],\"name\":\"g\",\"outputs\":[{\"name\":\"_multiplication\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_name\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"fixtures/cont.sol\":\"x\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"fixtures/cont.sol\":{\"keccak256\":\"0x672a47a1b70ddcbaf9a71c1a2d0ae3c36c526bd343f06ff17a0490025cac0292\",\"urls\":[\"bzzr://09b1fd3605d0a4c74e15c1069d618c4f107ecb00aefde37202455e91a56c3cb5\"]}},\"version\":1}",
"userdoc": {
"methods": {}
}
}
}
},
"sources": {
"fixtures/cont.sol": {
"ast": {
"absolutePath": "fixtures/cont.sol",
"exportedSymbols": {
"x": [
64
]
},
"id": 65,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.4",
".24"
],
"nodeType": "PragmaDirective",
"src": "0:24:0"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 64,
"linearizedBaseContracts": [
64
],
"name": "x",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 3,
"name": "number",
"nodeType": "VariableDeclaration",
"scope": 64,
"src": "41:10:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 2,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "41:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 5,
"name": "name",
"nodeType": "VariableDeclaration",
"scope": 64,
"src": "55:11:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 4,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "55:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
},
{
"body": {
"id": 14,
"nodeType": "Block",
"src": "108:23:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 12,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 10,
"name": "name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 5,
"src": "114:4:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 11,
"name": "_name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 7,
"src": "121:5:0",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
},
"src": "114:12:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"id": 13,
"nodeType": "ExpressionStatement",
"src": "114:12:0"
}
]
},
"documentation": null,
"id": 15,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [],
"name": "",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 8,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 7,
"name": "_name",
"nodeType": "VariableDeclaration",
"scope": 15,
"src": "83:12:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 6,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "83:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "82:14:0"
},
"payable": false,
"returnParameters": {
"id": 9,
"nodeType": "ParameterList",
"parameters": [],
"src": "108:0:0"
},
"scope": 64,
"src": "71:60:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 30,
"nodeType": "Block",
"src": "202:51:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 24,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 22,
"name": "number",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "208:6:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 23,
"name": "_number",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 17,
"src": "217:7:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"src": "208:16:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"id": 25,
"nodeType": "ExpressionStatement",
"src": "208:16:0"
},
{
"expression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"id": 28,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 26,
"name": "_number",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 17,
"src": "237:7:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"hexValue": "35",
"id": 27,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "247:1:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_5_by_1",
"typeString": "int_const 5"
},
"value": "5"
},
"src": "237:11:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"functionReturnParameters": 21,
"id": 29,
"nodeType": "Return",
"src": "230:18:0"
}
]
},
"documentation": null,
"id": 31,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "g",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 18,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 17,
"name": "_number",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "146:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 16,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "146:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "145:13:0"
},
"payable": false,
"returnParameters": {
"id": 21,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 20,
"name": "_multiplication",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "179:19:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 19,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "179:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "178:21:0"
},
"scope": 64,
"src": "135:118:0",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 44,
"nodeType": "Block",
"src": "332:29:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"id": 42,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 40,
"name": "_foo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 33,
"src": "345:4:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"id": 41,
"name": "_bar",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 35,
"src": "352:4:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"src": "345:11:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"functionReturnParameters": 39,
"id": 43,
"nodeType": "Return",
"src": "338:18:0"
}
]
},
"documentation": null,
"id": 45,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "f",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 36,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 33,
"name": "_foo",
"nodeType": "VariableDeclaration",
"scope": 45,
"src": "268:8:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 32,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "268:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 35,
"name": "_bar",
"nodeType": "VariableDeclaration",
"scope": 45,
"src": "278:8:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 34,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "278:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "267:20:0"
},
"payable": false,
"returnParameters": {
"id": 39,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 38,
"name": "_addition",
"nodeType": "VariableDeclaration",
"scope": 45,
"src": "315:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 37,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "315:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "314:15:0"
},
"scope": 64,
"src": "257:104:0",
"stateMutability": "pure",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 62,
"nodeType": "Block",
"src": "428:83:0",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"id": 54,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 52,
"name": "_bar",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 47,
"src": "437:4:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "3235",
"id": 53,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "444:2:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_25_by_1",
"typeString": "int_const 25"
},
"value": "25"
},
"src": "437:9:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": {
"id": 60,
"nodeType": "Block",
"src": "480:27:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 58,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "495:5:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"functionReturnParameters": 51,
"id": 59,
"nodeType": "Return",
"src": "488:12:0"
}
]
},
"id": 61,
"nodeType": "IfStatement",
"src": "434:73:0",
"trueBody": {
"id": 57,
"nodeType": "Block",
"src": "448:26:0",
"statements": [
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 55,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "463:4:0",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 51,
"id": 56,
"nodeType": "Return",
"src": "456:11:0"
}
]
}
}
]
},
"documentation": null,
"id": 63,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "h",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 48,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 47,
"name": "_bar",
"nodeType": "VariableDeclaration",
"scope": 63,
"src": "376:8:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 46,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "376:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "375:10:0"
},
"payable": false,
"returnParameters": {
"id": 51,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 50,
"name": "_great",
"nodeType": "VariableDeclaration",
"scope": 63,
"src": "413:11:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 49,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "413:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "412:13:0"
},
"scope": 64,
"src": "365:146:0",
"stateMutability": "pure",
"superFunction": null,
"visibility": "public"
}
],
"scope": 65,
"src": "26:487:0"
}
],
"src": "0:514:0"
},
"id": 0,
"legacyAST": {
"attributes": {
"absolutePath": "fixtures/cont.sol",
"exportedSymbols": {
"x": [
64
]
}
},
"children": [
{
"attributes": {
"literals": [
"solidity",
"^",
"0.4",
".24"
]
},
"id": 1,
"name": "PragmaDirective",
"src": "0:24:0"
},
{
"attributes": {
"baseContracts": [
null
],
"contractDependencies": [
null
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"linearizedBaseContracts": [
64
],
"name": "x",
"scope": 65
},
"children": [
{
"attributes": {
"constant": false,
"name": "number",
"scope": 64,
"stateVariable": true,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 2,
"name": "ElementaryTypeName",
"src": "41:3:0"
}
],
"id": 3,
"name": "VariableDeclaration",
"src": "41:10:0"
},
{
"attributes": {
"constant": false,
"name": "name",
"scope": 64,
"stateVariable": true,
"storageLocation": "default",
"type": "string",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "string",
"type": "string"
},
"id": 4,
"name": "ElementaryTypeName",
"src": "55:6:0"
}
],
"id": 5,
"name": "VariableDeclaration",
"src": "55:11:0"
},
{
"attributes": {
"constant": false,
"documentation": null,
"implemented": true,
"isConstructor": true,
"modifiers": [
null
],
"name": "",
"payable": false,
"scope": 64,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_name",
"scope": 15,
"stateVariable": false,
"storageLocation": "default",
"type": "string",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "string",
"type": "string"
},
"id": 6,
"name": "ElementaryTypeName",
"src": "83:6:0"
}
],
"id": 7,
"name": "VariableDeclaration",
"src": "83:12:0"
}
],
"id": 8,
"name": "ParameterList",
"src": "82:14:0"
},
{
"attributes": {
"parameters": [
null
]
},
"children": [],
"id": 9,
"name": "ParameterList",
"src": "108:0:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "string storage ref"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 5,
"type": "string storage ref",
"value": "name"
},
"id": 10,
"name": "Identifier",
"src": "114:4:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 7,
"type": "string memory",
"value": "_name"
},
"id": 11,
"name": "Identifier",
"src": "121:5:0"
}
],
"id": 12,
"name": "Assignment",
"src": "114:12:0"
}
],
"id": 13,
"name": "ExpressionStatement",
"src": "114:12:0"
}
],
"id": 14,
"name": "Block",
"src": "108:23:0"
}
],
"id": 15,
"name": "FunctionDefinition",
"src": "71:60:0"
},
{
"attributes": {
"constant": false,
"documentation": null,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "g",
"payable": false,
"scope": 64,
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_number",
"scope": 31,
"stateVariable": false,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 16,
"name": "ElementaryTypeName",
"src": "146:3:0"
}
],
"id": 17,
"name": "VariableDeclaration",
"src": "146:11:0"
}
],
"id": 18,
"name": "ParameterList",
"src": "145:13:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "_multiplication",
"scope": 31,
"stateVariable": false,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 19,
"name": "ElementaryTypeName",
"src": "179:3:0"
}
],
"id": 20,
"name": "VariableDeclaration",
"src": "179:19:0"
}
],
"id": 21,
"name": "ParameterList",
"src": "178:21:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "=",
"type": "int256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 3,
"type": "int256",
"value": "number"
},
"id": 22,
"name": "Identifier",
"src": "208:6:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 17,
"type": "int256",
"value": "_number"
},
"id": 23,
"name": "Identifier",
"src": "217:7:0"
}
],
"id": 24,
"name": "Assignment",
"src": "208:16:0"
}
],
"id": 25,
"name": "ExpressionStatement",
"src": "208:16:0"
},
{
"attributes": {
"functionReturnParameters": 21
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "*",
"type": "int256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 17,
"type": "int256",
"value": "_number"
},
"id": 26,
"name": "Identifier",
"src": "237:7:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "35",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 5",
"value": "5"
},
"id": 27,
"name": "Literal",
"src": "247:1:0"
}
],
"id": 28,
"name": "BinaryOperation",
"src": "237:11:0"
}
],
"id": 29,
"name": "Return",
"src": "230:18:0"
}
],
"id": 30,
"name": "Block",
"src": "202:51:0"
}
],
"id": 31,
"name": "FunctionDefinition",
"src": "135:118:0"
},
{
"attributes": {
"constant": true,
"documentation": null,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "f",
"payable": false,
"scope": 64,
"stateMutability": "pure",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_foo",
"scope": 45,
"stateVariable": false,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 32,
"name": "ElementaryTypeName",
"src": "268:3:0"
}
],
"id": 33,
"name": "VariableDeclaration",
"src": "268:8:0"
},
{
"attributes": {
"constant": false,
"name": "_bar",
"scope": 45,
"stateVariable": false,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 34,
"name": "ElementaryTypeName",
"src": "278:3:0"
}
],
"id": 35,
"name": "VariableDeclaration",
"src": "278:8:0"
}
],
"id": 36,
"name": "ParameterList",
"src": "267:20:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "_addition",
"scope": 45,
"stateVariable": false,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 37,
"name": "ElementaryTypeName",
"src": "315:3:0"
}
],
"id": 38,
"name": "VariableDeclaration",
"src": "315:13:0"
}
],
"id": 39,
"name": "ParameterList",
"src": "314:15:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 39
},
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": "+",
"type": "int256"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 33,
"type": "int256",
"value": "_foo"
},
"id": 40,
"name": "Identifier",
"src": "345:4:0"
},
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 35,
"type": "int256",
"value": "_bar"
},
"id": 41,
"name": "Identifier",
"src": "352:4:0"
}
],
"id": 42,
"name": "BinaryOperation",
"src": "345:11:0"
}
],
"id": 43,
"name": "Return",
"src": "338:18:0"
}
],
"id": 44,
"name": "Block",
"src": "332:29:0"
}
],
"id": 45,
"name": "FunctionDefinition",
"src": "257:104:0"
},
{
"attributes": {
"constant": true,
"documentation": null,
"implemented": true,
"isConstructor": false,
"modifiers": [
null
],
"name": "h",
"payable": false,
"scope": 64,
"stateMutability": "pure",
"superFunction": null,
"visibility": "public"
},
"children": [
{
"children": [
{
"attributes": {
"constant": false,
"name": "_bar",
"scope": 63,
"stateVariable": false,
"storageLocation": "default",
"type": "int256",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "int",
"type": "int256"
},
"id": 46,
"name": "ElementaryTypeName",
"src": "376:3:0"
}
],
"id": 47,
"name": "VariableDeclaration",
"src": "376:8:0"
}
],
"id": 48,
"name": "ParameterList",
"src": "375:10:0"
},
{
"children": [
{
"attributes": {
"constant": false,
"name": "_great",
"scope": 63,
"stateVariable": false,
"storageLocation": "default",
"type": "bool",
"value": null,
"visibility": "internal"
},
"children": [
{
"attributes": {
"name": "bool",
"type": "bool"
},
"id": 49,
"name": "ElementaryTypeName",
"src": "413:4:0"
}
],
"id": 50,
"name": "VariableDeclaration",
"src": "413:11:0"
}
],
"id": 51,
"name": "ParameterList",
"src": "412:13:0"
},
{
"children": [
{
"children": [
{
"attributes": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"operator": ">",
"type": "bool"
},
"children": [
{
"attributes": {
"argumentTypes": null,
"overloadedDeclarations": [
null
],
"referencedDeclaration": 47,
"type": "int256",
"value": "_bar"
},
"id": 52,
"name": "Identifier",
"src": "437:4:0"
},
{
"attributes": {
"argumentTypes": null,
"hexvalue": "3235",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "number",
"type": "int_const 25",
"value": "25"
},
"id": 53,
"name": "Literal",
"src": "444:2:0"
}
],
"id": 54,
"name": "BinaryOperation",
"src": "437:9:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 51
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "74727565",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "true"
},
"id": 55,
"name": "Literal",
"src": "463:4:0"
}
],
"id": 56,
"name": "Return",
"src": "456:11:0"
}
],
"id": 57,
"name": "Block",
"src": "448:26:0"
},
{
"children": [
{
"attributes": {
"functionReturnParameters": 51
},
"children": [
{
"attributes": {
"argumentTypes": null,
"hexvalue": "66616c7365",
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"subdenomination": null,
"token": "bool",
"type": "bool",
"value": "false"
},
"id": 58,
"name": "Literal",
"src": "495:5:0"
}
],
"id": 59,
"name": "Return",
"src": "488:12:0"
}
],
"id": 60,
"name": "Block",
"src": "480:27:0"
}
],
"id": 61,
"name": "IfStatement",
"src": "434:73:0"
}
],
"id": 62,
"name": "Block",
"src": "428:83:0"
}
],
"id": 63,
"name": "FunctionDefinition",
"src": "365:146:0"
}
],
"id": 64,
"name": "ContractDefinition",
"src": "26:487:0"
}
],
"id": 65,
"name": "SourceUnit",
"src": "0:514:0"
}
}
}
}