Created
March 7, 2019 08:35
-
-
Save rocky/aa8af885bed70db6e50c512795756883 to your computer and use it in GitHub Desktop.
solc import json
This file has been truncated, but you can view the full file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"compiler": { | |
"name": "solc", | |
"version": "0.4.24+commit.e67f0147.Emscripten.clang" | |
}, | |
"updatedAt": "2019-03-07T07:11:10.142Z", | |
"sources": { | |
"/src/external-vcs/github/aragonOS/contracts/common/Autopetrified.sol": { | |
"contracts": [ | |
{ | |
"contractName": "Autopetrified", | |
"bytecode": "0x608060405234801561001057600080fd5b5061002861002d640100000000026401000000009004565b6102ff565b6000610046610160640100000000026401000000009004565b146040805190810160405280601881526020017f494e49545f414c52454144595f494e495449414c495a45440000000000000000815250901515610125576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156100ea5780820151818401526020810190506100cf565b50505050905090810190601f1680156101175780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5061015e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101aa640100000000026401000000009004565b565b60006101a57febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e600102600019166102ed64010000000002610180176401000000009004565b905090565b60006101c3610160640100000000026401000000009004565b146040805190810160405280601881526020017f494e49545f414c52454144595f494e495449414c495a454400000000000000008152509015156102a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561026757808201518184015260208101905061024c565b50505050905090810190601f1680156102945780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506102ea817febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e600102600019166102f86401000000000261018b179091906401000000009004565b50565b600081549050919050565b8082555050565b6101be8061030e6000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac01461005c5780638b3dd7491461008b578063de4796ed146100b6575b600080fd5b34801561006857600080fd5b506100716100e5565b604051808215151515815260200191505060405180910390f35b34801561009757600080fd5b506100a0610110565b6040518082815260200191505060405180910390f35b3480156100c257600080fd5b506100cb610147565b604051808215151515815260200191505060405180910390f35b6000806100f0610110565b90506000811415801561010a575080610107610178565b10155b91505090565b60006101427febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e60010260001916610180565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610172610110565b14905090565b600043905090565b600081549050919050565b80825550505600a165627a7a72305820954b011d1a8f11caf94f925c9e820372bae74fdc7542cfef8f77225674a389bf0029", | |
"deployedBytecode": "0x608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac01461005c5780638b3dd7491461008b578063de4796ed146100b6575b600080fd5b34801561006857600080fd5b506100716100e5565b604051808215151515815260200191505060405180910390f35b34801561009757600080fd5b506100a0610110565b6040518082815260200191505060405180910390f35b3480156100c257600080fd5b506100cb610147565b604051808215151515815260200191505060405180910390f35b6000806100f0610110565b90506000811415801561010a575080610107610178565b10155b91505090565b60006101427febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e60010260001916610180565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610172610110565b14905090565b600043905090565b600081549050919050565b80825550505600a165627a7a72305820954b011d1a8f11caf94f925c9e820372bae74fdc7542cfef8f77225674a389bf0029", | |
"sourceMap": "100:262:0:-;;;144:216;8:9:-1;5:2;;;30:1;27;20:12;5:2;144:216:0;344:9;:7;;;:9;;;:::i;:::-;100:262;;590:84:2;651:1:1;623:24;:22;;;:24;;;:::i;:::-;:29;654:25;;;;;;;;;;;;;;;;;;615:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;615:65:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;637:30:2;277:2;637:13;;;:30;;;:::i;:::-;590:84::o;889:137:1:-;944:7;970:49;353:66;970:29;;:47;;;;;;;;:49;;;:::i;:::-;963:56;;889:137;:::o;1759:141::-;651:1;623:24;:22;;;:24;;;:::i;:::-;:29;654:25;;;;;;;;;;;;;;;;;;615:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;615:65:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1832:61;1880:12;353:66;1832:29;;:47;;;;;;;;;:61;;;;;:::i;:::-;1759:141;:::o;519:134:5:-;587:12;636:8;630:15;622:23;;620:27;;;:::o;1028:119::-;1134:4;1124:8;1117:22;1115:26;;:::o;100:262:0:-;;;;;;;", | |
"deployedSourceMap": "100:262:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1136:208:1;;;;;;;;;;;;;;;;;;;;;;;;;;;889:137;;8:9:-1;5:2;;;30:1;27;20:12;5:2;889:137:1;;;;;;;;;;;;;;;;;;;;;;;287:117:2;;8:9:-1;5:2;;;30:1;27;20:12;5:2;287:117:2;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208:1;1183:4;1199:27;1229:24;:22;:24::i;:::-;1199:54;;1293:1;1270:19;:24;;:67;;;;;1318:19;1298:16;:14;:16::i;:::-;:39;;1270:67;1263:74;;1136:208;;:::o;889:137::-;944:7;970:49;353:66;970:29;;:47;;;;:49::i;:::-;963:56;;889:137;:::o;287:117:2:-;331:4;277:2;354:24;:22;:24::i;:::-;:43;347:50;;287:117;:::o;347:94:3:-;396:7;422:12;415:19;;347:94;:::o;519:134:5:-;587:12;636:8;630:15;622:23;;620:27;;;:::o;1028:119::-;1134:4;1124:8;1117:22;1115:26;;:::o" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Autopetrified.sol", | |
"exportedSymbols": { | |
"Autopetrified": [ | |
266 | |
] | |
}, | |
"id": 267, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 255, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:0" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Petrifiable.sol", | |
"file": "./Petrifiable.sol", | |
"id": 256, | |
"nodeType": "ImportDirective", | |
"scope": 267, | |
"sourceUnit": 320, | |
"src": "70:27:0", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"baseContracts": [ | |
{ | |
"arguments": null, | |
"baseName": { | |
"contractScope": null, | |
"id": 257, | |
"name": "Petrifiable", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 319, | |
"src": "126:11:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_Petrifiable_$319", | |
"typeString": "contract Petrifiable" | |
} | |
}, | |
"id": 258, | |
"nodeType": "InheritanceSpecifier", | |
"src": "126:11:0" | |
} | |
], | |
"contractDependencies": [ | |
319, | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 266, | |
"linearizedBaseContracts": [ | |
266, | |
319, | |
417, | |
464 | |
], | |
"name": "Autopetrified", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"body": { | |
"id": 264, | |
"nodeType": "Block", | |
"src": "165:195:0", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 261, | |
"name": "petrify", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 318, | |
"src": "344:7:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", | |
"typeString": "function ()" | |
} | |
}, | |
"id": 262, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "344:9:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 263, | |
"nodeType": "ExpressionStatement", | |
"src": "344:9:0" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 265, | |
"implemented": true, | |
"isConstructor": true, | |
"isDeclaredConst": false, | |
"modifiers": [], | |
"name": "", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 259, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "155:2:0" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 260, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "165:0:0" | |
}, | |
"scope": 266, | |
"src": "144:216:0", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "public" | |
} | |
], | |
"scope": 267, | |
"src": "100:262:0" | |
} | |
], | |
"src": "44:319:0" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Autopetrified.sol", | |
"exportedSymbols": { | |
"Autopetrified": [ | |
266 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 255, | |
"name": "PragmaDirective", | |
"src": "44:24:0" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 320, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Petrifiable.sol", | |
"file": "./Petrifiable.sol", | |
"scope": 267, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 256, | |
"name": "ImportDirective", | |
"src": "70:27:0" | |
}, | |
{ | |
"attributes": { | |
"contractDependencies": [ | |
319, | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
266, | |
319, | |
417, | |
464 | |
], | |
"name": "Autopetrified", | |
"scope": 267 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "Petrifiable", | |
"referencedDeclaration": 319, | |
"type": "contract Petrifiable" | |
}, | |
"id": 257, | |
"name": "UserDefinedTypeName", | |
"src": "126:11:0" | |
} | |
], | |
"id": 258, | |
"name": "InheritanceSpecifier", | |
"src": "126:11:0" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": true, | |
"modifiers": [ | |
null | |
], | |
"name": "", | |
"payable": false, | |
"scope": 266, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 259, | |
"name": "ParameterList", | |
"src": "155:2:0" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 260, | |
"name": "ParameterList", | |
"src": "165:0:0" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 318, | |
"type": "function ()", | |
"value": "petrify" | |
}, | |
"id": 261, | |
"name": "Identifier", | |
"src": "344:7:0" | |
} | |
], | |
"id": 262, | |
"name": "FunctionCall", | |
"src": "344:9:0" | |
} | |
], | |
"id": 263, | |
"name": "ExpressionStatement", | |
"src": "344:9:0" | |
} | |
], | |
"id": 264, | |
"name": "Block", | |
"src": "165:195:0" | |
} | |
], | |
"id": 265, | |
"name": "FunctionDefinition", | |
"src": "144:216:0" | |
} | |
], | |
"id": 266, | |
"name": "ContractDefinition", | |
"src": "100:262:0" | |
} | |
], | |
"id": 267, | |
"name": "SourceUnit", | |
"src": "44:319:0" | |
}, | |
"id": 0, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"./Petrifiable.sol\";\n\n\ncontract Autopetrified is Petrifiable {\n constructor() public {\n // Immediately petrify base (non-proxy) instances of inherited contracts on deploy.\n // This renders them uninitializable (and unusable without a proxy).\n petrify();\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/common/Initializable.sol": { | |
"contracts": [ | |
{ | |
"contractName": "Initializable", | |
"bytecode": "0x608060405234801561001057600080fd5b5061014c806100206000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac0146100515780638b3dd74914610080575b600080fd5b34801561005d57600080fd5b506100666100ab565b604051808215151515815260200191505060405180910390f35b34801561008c57600080fd5b506100956100d6565b6040518082815260200191505060405180910390f35b6000806100b66100d6565b9050600081141580156100d05750806100cd61010d565b10155b91505090565b60006101087febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e60010260001916610115565b905090565b600043905090565b6000815490509190505600a165627a7a72305820b315d04df77214a91c54f91ed1fa50e47ad99788a3c2ced21ff3a25dd8af29f10029", | |
"deployedBytecode": "0x60806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac0146100515780638b3dd74914610080575b600080fd5b34801561005d57600080fd5b506100666100ab565b604051808215151515815260200191505060405180910390f35b34801561008c57600080fd5b506100956100d6565b6040518082815260200191505060405180910390f35b6000806100b66100d6565b9050600081141580156100d05750806100cd61010d565b10155b91505090565b60006101087febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e60010260001916610115565b905090565b600043905090565b6000815490509190505600a165627a7a72305820b315d04df77214a91c54f91ed1fa50e47ad99788a3c2ced21ff3a25dd8af29f10029", | |
"sourceMap": "144:1758:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;144:1758:1;;;;;;;", | |
"deployedSourceMap": "144:1758:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1136:208:1;;;;;;;;;;;;;;;;;;;;;;;;;;;889:137;;8:9:-1;5:2;;;30:1;27;20:12;5:2;889:137:1;;;;;;;;;;;;;;;;;;;;;;;1136:208;1183:4;1199:27;1229:24;:22;:24::i;:::-;1199:54;;1293:1;1270:19;:24;;:67;;;;;1318:19;1298:16;:14;:16::i;:::-;:39;;1270:67;1263:74;;1136:208;;:::o;889:137::-;944:7;970:49;353:66;970:29;;:47;;;;:49::i;:::-;963:56;;889:137;:::o;347:94:3:-;396:7;422:12;415:19;;347:94;:::o;519:134:5:-;587:12;636:8;630:15;622:23;;620:27;;;:::o" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Initializable.sol", | |
"exportedSymbols": { | |
"Initializable": [ | |
417 | |
] | |
}, | |
"id": 418, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 321, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:1" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/UnstructuredStorage.sol", | |
"file": "./UnstructuredStorage.sol", | |
"id": 322, | |
"nodeType": "ImportDirective", | |
"scope": 418, | |
"sourceUnit": 540, | |
"src": "70:35:1", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/TimeHelpers.sol", | |
"file": "../common/TimeHelpers.sol", | |
"id": 323, | |
"nodeType": "ImportDirective", | |
"scope": 418, | |
"sourceUnit": 465, | |
"src": "106:35:1", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"baseContracts": [ | |
{ | |
"arguments": null, | |
"baseName": { | |
"contractScope": null, | |
"id": 324, | |
"name": "TimeHelpers", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 464, | |
"src": "170:11:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_TimeHelpers_$464", | |
"typeString": "contract TimeHelpers" | |
} | |
}, | |
"id": 325, | |
"nodeType": "InheritanceSpecifier", | |
"src": "170:11:1" | |
} | |
], | |
"contractDependencies": [ | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 417, | |
"linearizedBaseContracts": [ | |
417, | |
464 | |
], | |
"name": "Initializable", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"id": 328, | |
"libraryName": { | |
"contractScope": null, | |
"id": 326, | |
"name": "UnstructuredStorage", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 539, | |
"src": "194:19:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_UnstructuredStorage_$539", | |
"typeString": "library UnstructuredStorage" | |
} | |
}, | |
"nodeType": "UsingForDirective", | |
"src": "188:38:1", | |
"typeName": { | |
"id": 327, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "218:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
} | |
}, | |
{ | |
"constant": true, | |
"id": 331, | |
"name": "INITIALIZATION_BLOCK_POSITION", | |
"nodeType": "VariableDeclaration", | |
"scope": 417, | |
"src": "295:124:1", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 329, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "295:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "307865626230356233383661386433343838326238373131643135366634363336393039383364633437383135393830666238326165656666316161343335373965", | |
"id": 330, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "353:66:1", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_106605114080364359579522388881656407901251981291752319576997573973948972095390_by_1", | |
"typeString": "int_const 1066...(70 digits omitted)...5390" | |
}, | |
"value": "0xebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e" | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": true, | |
"id": 334, | |
"name": "ERROR_ALREADY_INITIALIZED", | |
"nodeType": "VariableDeclaration", | |
"scope": 417, | |
"src": "426:78:1", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 332, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "426:6:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "494e49545f414c52454144595f494e495449414c495a4544", | |
"id": 333, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "string", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "478:26:1", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_stringliteral_7a2bad6ae343e37d141d3f47355bee0a9a7371affceb8638867384a5d0ab0e73", | |
"typeString": "literal_string \"INIT_ALREADY_INITIALIZED\"" | |
}, | |
"value": "INIT_ALREADY_INITIALIZED" | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"constant": true, | |
"id": 337, | |
"name": "ERROR_NOT_INITIALIZED", | |
"nodeType": "VariableDeclaration", | |
"scope": 417, | |
"src": "510:70:1", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 335, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "510:6:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "494e49545f4e4f545f494e495449414c495a4544", | |
"id": 336, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "string", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "558:22:1", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_stringliteral_0447b08a3c6a0d1d9310f95dd98634a89b7d8ccef436579bfc11a41060965373", | |
"typeString": "literal_string \"INIT_NOT_INITIALIZED\"" | |
}, | |
"value": "INIT_NOT_INITIALIZED" | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"body": { | |
"id": 348, | |
"nodeType": "Block", | |
"src": "605:93:1", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 343, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 340, | |
"name": "getInitializationBlock", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 369, | |
"src": "623:22:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 341, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "623:24:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "==", | |
"rightExpression": { | |
"argumentTypes": null, | |
"hexValue": "30", | |
"id": 342, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "651:1:1", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_0_by_1", | |
"typeString": "int_const 0" | |
}, | |
"value": "0" | |
}, | |
"src": "623:29:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 344, | |
"name": "ERROR_ALREADY_INITIALIZED", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 334, | |
"src": "654:25:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"id": 339, | |
"name": "require", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"src": "615:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", | |
"typeString": "function (bool,string memory) pure" | |
} | |
}, | |
"id": 345, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "615:65:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 346, | |
"nodeType": "ExpressionStatement", | |
"src": "615:65:1" | |
}, | |
{ | |
"id": 347, | |
"nodeType": "PlaceholderStatement", | |
"src": "690:1:1" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 349, | |
"name": "onlyInit", | |
"nodeType": "ModifierDefinition", | |
"parameters": { | |
"id": 338, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "605:0:1" | |
}, | |
"src": "587:111:1", | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 358, | |
"nodeType": "Block", | |
"src": "727:76:1", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 352, | |
"name": "hasInitialized", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 389, | |
"src": "745:14:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", | |
"typeString": "function () view returns (bool)" | |
} | |
}, | |
"id": 353, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "745:16:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 354, | |
"name": "ERROR_NOT_INITIALIZED", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 337, | |
"src": "763:21:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"id": 351, | |
"name": "require", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"src": "737:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", | |
"typeString": "function (bool,string memory) pure" | |
} | |
}, | |
"id": 355, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "737:48:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 356, | |
"nodeType": "ExpressionStatement", | |
"src": "737:48:1" | |
}, | |
{ | |
"id": 357, | |
"nodeType": "PlaceholderStatement", | |
"src": "795:1:1" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 359, | |
"name": "isInitialized", | |
"nodeType": "ModifierDefinition", | |
"parameters": { | |
"id": 350, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "727:0:1" | |
}, | |
"src": "704:99:1", | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 368, | |
"nodeType": "Block", | |
"src": "953:73:1", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"expression": { | |
"argumentTypes": null, | |
"id": 364, | |
"name": "INITIALIZATION_BLOCK_POSITION", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 331, | |
"src": "970:29:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"id": 365, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "getStorageUint256", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 502, | |
"src": "970:47:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_uint256_$bound_to$_t_bytes32_$", | |
"typeString": "function (bytes32) view returns (uint256)" | |
} | |
}, | |
"id": 366, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "970:49:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"functionReturnParameters": 363, | |
"id": 367, | |
"nodeType": "Return", | |
"src": "963:56:1" | |
} | |
] | |
}, | |
"documentation": "@return Block number in which the contract was initialized", | |
"id": 369, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getInitializationBlock", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 360, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "920:2:1" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 363, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 362, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 369, | |
"src": "944:7:1", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 361, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "944:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "943:9:1" | |
}, | |
"scope": 417, | |
"src": "889:137:1", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
{ | |
"body": { | |
"id": 388, | |
"nodeType": "Block", | |
"src": "1189:155:1", | |
"statements": [ | |
{ | |
"assignments": [ | |
375 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 375, | |
"name": "initializationBlock", | |
"nodeType": "VariableDeclaration", | |
"scope": 389, | |
"src": "1199:27:1", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 374, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1199:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 378, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 376, | |
"name": "getInitializationBlock", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 369, | |
"src": "1229:22:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 377, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1229:24:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1199:54:1" | |
}, | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"id": 386, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 381, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 379, | |
"name": "initializationBlock", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 375, | |
"src": "1270:19:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "!=", | |
"rightExpression": { | |
"argumentTypes": null, | |
"hexValue": "30", | |
"id": 380, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "1293:1:1", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_0_by_1", | |
"typeString": "int_const 0" | |
}, | |
"value": "0" | |
}, | |
"src": "1270:24:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "&&", | |
"rightExpression": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 385, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 382, | |
"name": "getBlockNumber", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 432, | |
"src": "1298:14:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 383, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1298:16:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": ">=", | |
"rightExpression": { | |
"argumentTypes": null, | |
"id": 384, | |
"name": "initializationBlock", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 375, | |
"src": "1318:19:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "1298:39:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"src": "1270:67:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"functionReturnParameters": 373, | |
"id": 387, | |
"nodeType": "Return", | |
"src": "1263:74:1" | |
} | |
] | |
}, | |
"documentation": "@return Whether the contract has been initialized by the time of the current block", | |
"id": 389, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "hasInitialized", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 370, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "1159:2:1" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 373, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 372, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 389, | |
"src": "1183:4:1", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"typeName": { | |
"id": 371, | |
"name": "bool", | |
"nodeType": "ElementaryTypeName", | |
"src": "1183:4:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1182:6:1" | |
}, | |
"scope": 417, | |
"src": "1136:208:1", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
{ | |
"body": { | |
"id": 401, | |
"nodeType": "Block", | |
"src": "1496:82:1", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 397, | |
"name": "getBlockNumber", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 432, | |
"src": "1554:14:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 398, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1554:16:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"expression": { | |
"argumentTypes": null, | |
"id": 394, | |
"name": "INITIALIZATION_BLOCK_POSITION", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 331, | |
"src": "1506:29:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"id": 396, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "setStorageUint256", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 538, | |
"src": "1506:47:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_uint256_$returns$__$bound_to$_t_bytes32_$", | |
"typeString": "function (bytes32,uint256)" | |
} | |
}, | |
"id": 399, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1506:65:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 400, | |
"nodeType": "ExpressionStatement", | |
"src": "1506:65:1" | |
} | |
] | |
}, | |
"documentation": "@dev Function to be called by top level contract after initialization has finished.", | |
"id": 402, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [ | |
{ | |
"arguments": null, | |
"id": 392, | |
"modifierName": { | |
"argumentTypes": null, | |
"id": 391, | |
"name": "onlyInit", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 349, | |
"src": "1487:8:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_modifier$__$", | |
"typeString": "modifier ()" | |
} | |
}, | |
"nodeType": "ModifierInvocation", | |
"src": "1487:8:1" | |
} | |
], | |
"name": "initialized", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 390, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "1475:2:1" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 393, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "1496:0:1" | |
}, | |
"scope": 417, | |
"src": "1455:123:1", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 415, | |
"nodeType": "Block", | |
"src": "1822:78:1", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 412, | |
"name": "_blockNumber", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 404, | |
"src": "1880:12:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"expression": { | |
"argumentTypes": null, | |
"id": 409, | |
"name": "INITIALIZATION_BLOCK_POSITION", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 331, | |
"src": "1832:29:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"id": 411, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "setStorageUint256", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 538, | |
"src": "1832:47:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_uint256_$returns$__$bound_to$_t_bytes32_$", | |
"typeString": "function (bytes32,uint256)" | |
} | |
}, | |
"id": 413, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1832:61:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 414, | |
"nodeType": "ExpressionStatement", | |
"src": "1832:61:1" | |
} | |
] | |
}, | |
"documentation": "@dev Function to be called by top level contract after initialization to enable the contract\n at a future block number rather than immediately.", | |
"id": 416, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [ | |
{ | |
"arguments": null, | |
"id": 407, | |
"modifierName": { | |
"argumentTypes": null, | |
"id": 406, | |
"name": "onlyInit", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 349, | |
"src": "1813:8:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_modifier$__$", | |
"typeString": "modifier ()" | |
} | |
}, | |
"nodeType": "ModifierInvocation", | |
"src": "1813:8:1" | |
} | |
], | |
"name": "initializedAt", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 405, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 404, | |
"name": "_blockNumber", | |
"nodeType": "VariableDeclaration", | |
"scope": 416, | |
"src": "1782:20:1", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 403, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1782:7:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1781:22:1" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 408, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "1822:0:1" | |
}, | |
"scope": 417, | |
"src": "1759:141:1", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
} | |
], | |
"scope": 418, | |
"src": "144:1758:1" | |
} | |
], | |
"src": "44:1859:1" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Initializable.sol", | |
"exportedSymbols": { | |
"Initializable": [ | |
417 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 321, | |
"name": "PragmaDirective", | |
"src": "44:24:1" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 540, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/UnstructuredStorage.sol", | |
"file": "./UnstructuredStorage.sol", | |
"scope": 418, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 322, | |
"name": "ImportDirective", | |
"src": "70:35:1" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 465, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/TimeHelpers.sol", | |
"file": "../common/TimeHelpers.sol", | |
"scope": 418, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 323, | |
"name": "ImportDirective", | |
"src": "106:35:1" | |
}, | |
{ | |
"attributes": { | |
"contractDependencies": [ | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
417, | |
464 | |
], | |
"name": "Initializable", | |
"scope": 418 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "TimeHelpers", | |
"referencedDeclaration": 464, | |
"type": "contract TimeHelpers" | |
}, | |
"id": 324, | |
"name": "UserDefinedTypeName", | |
"src": "170:11:1" | |
} | |
], | |
"id": 325, | |
"name": "InheritanceSpecifier", | |
"src": "170:11:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "UnstructuredStorage", | |
"referencedDeclaration": 539, | |
"type": "library UnstructuredStorage" | |
}, | |
"id": 326, | |
"name": "UserDefinedTypeName", | |
"src": "194:19:1" | |
}, | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 327, | |
"name": "ElementaryTypeName", | |
"src": "218:7:1" | |
} | |
], | |
"id": 328, | |
"name": "UsingForDirective", | |
"src": "188:38:1" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "INITIALIZATION_BLOCK_POSITION", | |
"scope": 417, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 329, | |
"name": "ElementaryTypeName", | |
"src": "295:7:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "307865626230356233383661386433343838326238373131643135366634363336393039383364633437383135393830666238326165656666316161343335373965", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 1066...(70 digits omitted)...5390", | |
"value": "0xebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e" | |
}, | |
"id": 330, | |
"name": "Literal", | |
"src": "353:66:1" | |
} | |
], | |
"id": 331, | |
"name": "VariableDeclaration", | |
"src": "295:124:1" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "ERROR_ALREADY_INITIALIZED", | |
"scope": 417, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "string", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "string", | |
"type": "string" | |
}, | |
"id": 332, | |
"name": "ElementaryTypeName", | |
"src": "426:6:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "494e49545f414c52454144595f494e495449414c495a4544", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "string", | |
"type": "literal_string \"INIT_ALREADY_INITIALIZED\"", | |
"value": "INIT_ALREADY_INITIALIZED" | |
}, | |
"id": 333, | |
"name": "Literal", | |
"src": "478:26:1" | |
} | |
], | |
"id": 334, | |
"name": "VariableDeclaration", | |
"src": "426:78:1" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "ERROR_NOT_INITIALIZED", | |
"scope": 417, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "string", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "string", | |
"type": "string" | |
}, | |
"id": 335, | |
"name": "ElementaryTypeName", | |
"src": "510:6:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "494e49545f4e4f545f494e495449414c495a4544", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "string", | |
"type": "literal_string \"INIT_NOT_INITIALIZED\"", | |
"value": "INIT_NOT_INITIALIZED" | |
}, | |
"id": 336, | |
"name": "Literal", | |
"src": "558:22:1" | |
} | |
], | |
"id": 337, | |
"name": "VariableDeclaration", | |
"src": "510:70:1" | |
}, | |
{ | |
"attributes": { | |
"documentation": null, | |
"name": "onlyInit", | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 338, | |
"name": "ParameterList", | |
"src": "605:0:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"type": "function (bool,string memory) pure", | |
"value": "require" | |
}, | |
"id": 339, | |
"name": "Identifier", | |
"src": "615:7:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"operator": "==", | |
"type": "bool" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 369, | |
"type": "function () view returns (uint256)", | |
"value": "getInitializationBlock" | |
}, | |
"id": 340, | |
"name": "Identifier", | |
"src": "623:22:1" | |
} | |
], | |
"id": 341, | |
"name": "FunctionCall", | |
"src": "623:24:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "30", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 0", | |
"value": "0" | |
}, | |
"id": 342, | |
"name": "Literal", | |
"src": "651:1:1" | |
} | |
], | |
"id": 343, | |
"name": "BinaryOperation", | |
"src": "623:29:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 334, | |
"type": "string memory", | |
"value": "ERROR_ALREADY_INITIALIZED" | |
}, | |
"id": 344, | |
"name": "Identifier", | |
"src": "654:25:1" | |
} | |
], | |
"id": 345, | |
"name": "FunctionCall", | |
"src": "615:65:1" | |
} | |
], | |
"id": 346, | |
"name": "ExpressionStatement", | |
"src": "615:65:1" | |
}, | |
{ | |
"id": 347, | |
"name": "PlaceholderStatement", | |
"src": "690:1:1" | |
} | |
], | |
"id": 348, | |
"name": "Block", | |
"src": "605:93:1" | |
} | |
], | |
"id": 349, | |
"name": "ModifierDefinition", | |
"src": "587:111:1" | |
}, | |
{ | |
"attributes": { | |
"documentation": null, | |
"name": "isInitialized", | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 350, | |
"name": "ParameterList", | |
"src": "727:0:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"type": "function (bool,string memory) pure", | |
"value": "require" | |
}, | |
"id": 351, | |
"name": "Identifier", | |
"src": "737:7:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "bool", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 389, | |
"type": "function () view returns (bool)", | |
"value": "hasInitialized" | |
}, | |
"id": 352, | |
"name": "Identifier", | |
"src": "745:14:1" | |
} | |
], | |
"id": 353, | |
"name": "FunctionCall", | |
"src": "745:16:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 337, | |
"type": "string memory", | |
"value": "ERROR_NOT_INITIALIZED" | |
}, | |
"id": 354, | |
"name": "Identifier", | |
"src": "763:21:1" | |
} | |
], | |
"id": 355, | |
"name": "FunctionCall", | |
"src": "737:48:1" | |
} | |
], | |
"id": 356, | |
"name": "ExpressionStatement", | |
"src": "737:48:1" | |
}, | |
{ | |
"id": 357, | |
"name": "PlaceholderStatement", | |
"src": "795:1:1" | |
} | |
], | |
"id": 358, | |
"name": "Block", | |
"src": "727:76:1" | |
} | |
], | |
"id": 359, | |
"name": "ModifierDefinition", | |
"src": "704:99:1" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": "@return Block number in which the contract was initialized", | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getInitializationBlock", | |
"payable": false, | |
"scope": 417, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 360, | |
"name": "ParameterList", | |
"src": "920:2:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 369, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 361, | |
"name": "ElementaryTypeName", | |
"src": "944:7:1" | |
} | |
], | |
"id": 362, | |
"name": "VariableDeclaration", | |
"src": "944:7:1" | |
} | |
], | |
"id": 363, | |
"name": "ParameterList", | |
"src": "943:9:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 363 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "getStorageUint256", | |
"referencedDeclaration": 502, | |
"type": "function (bytes32) view returns (uint256)" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 331, | |
"type": "bytes32", | |
"value": "INITIALIZATION_BLOCK_POSITION" | |
}, | |
"id": 364, | |
"name": "Identifier", | |
"src": "970:29:1" | |
} | |
], | |
"id": 365, | |
"name": "MemberAccess", | |
"src": "970:47:1" | |
} | |
], | |
"id": 366, | |
"name": "FunctionCall", | |
"src": "970:49:1" | |
} | |
], | |
"id": 367, | |
"name": "Return", | |
"src": "963:56:1" | |
} | |
], | |
"id": 368, | |
"name": "Block", | |
"src": "953:73:1" | |
} | |
], | |
"id": 369, | |
"name": "FunctionDefinition", | |
"src": "889:137:1" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": "@return Whether the contract has been initialized by the time of the current block", | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "hasInitialized", | |
"payable": false, | |
"scope": 417, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 370, | |
"name": "ParameterList", | |
"src": "1159:2:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 389, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bool", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bool", | |
"type": "bool" | |
}, | |
"id": 371, | |
"name": "ElementaryTypeName", | |
"src": "1183:4:1" | |
} | |
], | |
"id": 372, | |
"name": "VariableDeclaration", | |
"src": "1183:4:1" | |
} | |
], | |
"id": 373, | |
"name": "ParameterList", | |
"src": "1182:6:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"assignments": [ | |
375 | |
] | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "initializationBlock", | |
"scope": 389, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 374, | |
"name": "ElementaryTypeName", | |
"src": "1199:7:1" | |
} | |
], | |
"id": 375, | |
"name": "VariableDeclaration", | |
"src": "1199:27:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 369, | |
"type": "function () view returns (uint256)", | |
"value": "getInitializationBlock" | |
}, | |
"id": 376, | |
"name": "Identifier", | |
"src": "1229:22:1" | |
} | |
], | |
"id": 377, | |
"name": "FunctionCall", | |
"src": "1229:24:1" | |
} | |
], | |
"id": 378, | |
"name": "VariableDeclarationStatement", | |
"src": "1199:54:1" | |
}, | |
{ | |
"attributes": { | |
"functionReturnParameters": 373 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"operator": "&&", | |
"type": "bool" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"operator": "!=", | |
"type": "bool" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 375, | |
"type": "uint256", | |
"value": "initializationBlock" | |
}, | |
"id": 379, | |
"name": "Identifier", | |
"src": "1270:19:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "30", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 0", | |
"value": "0" | |
}, | |
"id": 380, | |
"name": "Literal", | |
"src": "1293:1:1" | |
} | |
], | |
"id": 381, | |
"name": "BinaryOperation", | |
"src": "1270:24:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"operator": ">=", | |
"type": "bool" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 432, | |
"type": "function () view returns (uint256)", | |
"value": "getBlockNumber" | |
}, | |
"id": 382, | |
"name": "Identifier", | |
"src": "1298:14:1" | |
} | |
], | |
"id": 383, | |
"name": "FunctionCall", | |
"src": "1298:16:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 375, | |
"type": "uint256", | |
"value": "initializationBlock" | |
}, | |
"id": 384, | |
"name": "Identifier", | |
"src": "1318:19:1" | |
} | |
], | |
"id": 385, | |
"name": "BinaryOperation", | |
"src": "1298:39:1" | |
} | |
], | |
"id": 386, | |
"name": "BinaryOperation", | |
"src": "1270:67:1" | |
} | |
], | |
"id": 387, | |
"name": "Return", | |
"src": "1263:74:1" | |
} | |
], | |
"id": 388, | |
"name": "Block", | |
"src": "1189:155:1" | |
} | |
], | |
"id": 389, | |
"name": "FunctionDefinition", | |
"src": "1136:208:1" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": "@dev Function to be called by top level contract after initialization has finished.", | |
"implemented": true, | |
"isConstructor": false, | |
"name": "initialized", | |
"payable": false, | |
"scope": 417, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 390, | |
"name": "ParameterList", | |
"src": "1475:2:1" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 393, | |
"name": "ParameterList", | |
"src": "1496:0:1" | |
}, | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 349, | |
"type": "modifier ()", | |
"value": "onlyInit" | |
}, | |
"id": 391, | |
"name": "Identifier", | |
"src": "1487:8:1" | |
} | |
], | |
"id": 392, | |
"name": "ModifierInvocation", | |
"src": "1487:8:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "setStorageUint256", | |
"referencedDeclaration": 538, | |
"type": "function (bytes32,uint256)" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 331, | |
"type": "bytes32", | |
"value": "INITIALIZATION_BLOCK_POSITION" | |
}, | |
"id": 394, | |
"name": "Identifier", | |
"src": "1506:29:1" | |
} | |
], | |
"id": 396, | |
"name": "MemberAccess", | |
"src": "1506:47:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 432, | |
"type": "function () view returns (uint256)", | |
"value": "getBlockNumber" | |
}, | |
"id": 397, | |
"name": "Identifier", | |
"src": "1554:14:1" | |
} | |
], | |
"id": 398, | |
"name": "FunctionCall", | |
"src": "1554:16:1" | |
} | |
], | |
"id": 399, | |
"name": "FunctionCall", | |
"src": "1506:65:1" | |
} | |
], | |
"id": 400, | |
"name": "ExpressionStatement", | |
"src": "1506:65:1" | |
} | |
], | |
"id": 401, | |
"name": "Block", | |
"src": "1496:82:1" | |
} | |
], | |
"id": 402, | |
"name": "FunctionDefinition", | |
"src": "1455:123:1" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": "@dev Function to be called by top level contract after initialization to enable the contract\n at a future block number rather than immediately.", | |
"implemented": true, | |
"isConstructor": false, | |
"name": "initializedAt", | |
"payable": false, | |
"scope": 417, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_blockNumber", | |
"scope": 416, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 403, | |
"name": "ElementaryTypeName", | |
"src": "1782:7:1" | |
} | |
], | |
"id": 404, | |
"name": "VariableDeclaration", | |
"src": "1782:20:1" | |
} | |
], | |
"id": 405, | |
"name": "ParameterList", | |
"src": "1781:22:1" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 408, | |
"name": "ParameterList", | |
"src": "1822:0:1" | |
}, | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 349, | |
"type": "modifier ()", | |
"value": "onlyInit" | |
}, | |
"id": 406, | |
"name": "Identifier", | |
"src": "1813:8:1" | |
} | |
], | |
"id": 407, | |
"name": "ModifierInvocation", | |
"src": "1813:8:1" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "setStorageUint256", | |
"referencedDeclaration": 538, | |
"type": "function (bytes32,uint256)" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 331, | |
"type": "bytes32", | |
"value": "INITIALIZATION_BLOCK_POSITION" | |
}, | |
"id": 409, | |
"name": "Identifier", | |
"src": "1832:29:1" | |
} | |
], | |
"id": 411, | |
"name": "MemberAccess", | |
"src": "1832:47:1" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 404, | |
"type": "uint256", | |
"value": "_blockNumber" | |
}, | |
"id": 412, | |
"name": "Identifier", | |
"src": "1880:12:1" | |
} | |
], | |
"id": 413, | |
"name": "FunctionCall", | |
"src": "1832:61:1" | |
} | |
], | |
"id": 414, | |
"name": "ExpressionStatement", | |
"src": "1832:61:1" | |
} | |
], | |
"id": 415, | |
"name": "Block", | |
"src": "1822:78:1" | |
} | |
], | |
"id": 416, | |
"name": "FunctionDefinition", | |
"src": "1759:141:1" | |
} | |
], | |
"id": 417, | |
"name": "ContractDefinition", | |
"src": "144:1758:1" | |
} | |
], | |
"id": 418, | |
"name": "SourceUnit", | |
"src": "44:1859:1" | |
}, | |
"id": 1, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"./UnstructuredStorage.sol\";\nimport \"../common/TimeHelpers.sol\";\n\n\ncontract Initializable is TimeHelpers {\n using UnstructuredStorage for bytes32;\n\n // keccak256(\"aragonOS.initializable.initializationBlock\")\n bytes32 internal constant INITIALIZATION_BLOCK_POSITION = 0xebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e;\n\n string private constant ERROR_ALREADY_INITIALIZED = \"INIT_ALREADY_INITIALIZED\";\n string private constant ERROR_NOT_INITIALIZED = \"INIT_NOT_INITIALIZED\";\n\n modifier onlyInit {\n require(getInitializationBlock() == 0, ERROR_ALREADY_INITIALIZED);\n _;\n }\n\n modifier isInitialized {\n require(hasInitialized(), ERROR_NOT_INITIALIZED);\n _;\n }\n\n /**\n * @return Block number in which the contract was initialized\n */\n function getInitializationBlock() public view returns (uint256) {\n return INITIALIZATION_BLOCK_POSITION.getStorageUint256();\n }\n\n /**\n * @return Whether the contract has been initialized by the time of the current block\n */\n function hasInitialized() public view returns (bool) {\n uint256 initializationBlock = getInitializationBlock();\n return initializationBlock != 0 && getBlockNumber() >= initializationBlock;\n }\n\n /**\n * @dev Function to be called by top level contract after initialization has finished.\n */\n function initialized() internal onlyInit {\n INITIALIZATION_BLOCK_POSITION.setStorageUint256(getBlockNumber());\n }\n\n /**\n * @dev Function to be called by top level contract after initialization to enable the contract\n * at a future block number rather than immediately.\n */\n function initializedAt(uint256 _blockNumber) internal onlyInit {\n INITIALIZATION_BLOCK_POSITION.setStorageUint256(_blockNumber);\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/common/Petrifiable.sol": { | |
"contracts": [ | |
{ | |
"contractName": "Petrifiable", | |
"bytecode": "0x608060405234801561001057600080fd5b506101b7806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac01461005c5780638b3dd7491461008b578063de4796ed146100b6575b600080fd5b34801561006857600080fd5b506100716100e5565b604051808215151515815260200191505060405180910390f35b34801561009757600080fd5b506100a0610110565b6040518082815260200191505060405180910390f35b3480156100c257600080fd5b506100cb610147565b604051808215151515815260200191505060405180910390f35b6000806100f0610110565b90506000811415801561010a575080610107610178565b10155b91505090565b60006101427febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e60010260001916610180565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610172610110565b14905090565b600043905090565b6000815490509190505600a165627a7a72305820ba68324a239bbb46d0b36d749b6c41fad77f3651c169e1d68efc0c421a9664f20029", | |
"deployedBytecode": "0x608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac01461005c5780638b3dd7491461008b578063de4796ed146100b6575b600080fd5b34801561006857600080fd5b506100716100e5565b604051808215151515815260200191505060405180910390f35b34801561009757600080fd5b506100a0610110565b6040518082815260200191505060405180910390f35b3480156100c257600080fd5b506100cb610147565b604051808215151515815260200191505060405180910390f35b6000806100f0610110565b90506000811415801561010a575080610107610178565b10155b91505090565b60006101427febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e60010260001916610180565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610172610110565b14905090565b600043905090565b6000815490509190505600a165627a7a72305820ba68324a239bbb46d0b36d749b6c41fad77f3651c169e1d68efc0c421a9664f20029", | |
"sourceMap": "102:574:2:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;102:574:2;;;;;;;", | |
"deployedSourceMap": "102:574:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1136:208:1;;;;;;;;;;;;;;;;;;;;;;;;;;;889:137;;8:9:-1;5:2;;;30:1;27;20:12;5:2;889:137:1;;;;;;;;;;;;;;;;;;;;;;;287:117:2;;8:9:-1;5:2;;;30:1;27;20:12;5:2;287:117:2;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208:1;1183:4;1199:27;1229:24;:22;:24::i;:::-;1199:54;;1293:1;1270:19;:24;;:67;;;;;1318:19;1298:16;:14;:16::i;:::-;:39;;1270:67;1263:74;;1136:208;;:::o;889:137::-;944:7;970:49;353:66;970:29;;:47;;;;:49::i;:::-;963:56;;889:137;:::o;287:117:2:-;331:4;277:2;354:24;:22;:24::i;:::-;:43;347:50;;287:117;:::o;347:94:3:-;396:7;422:12;415:19;;347:94;:::o;519:134:5:-;587:12;636:8;630:15;622:23;;620:27;;;:::o" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Petrifiable.sol", | |
"exportedSymbols": { | |
"Petrifiable": [ | |
319 | |
] | |
}, | |
"id": 320, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 288, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:2" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Initializable.sol", | |
"file": "./Initializable.sol", | |
"id": 289, | |
"nodeType": "ImportDirective", | |
"scope": 320, | |
"sourceUnit": 418, | |
"src": "70:29:2", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"baseContracts": [ | |
{ | |
"arguments": null, | |
"baseName": { | |
"contractScope": null, | |
"id": 290, | |
"name": "Initializable", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 417, | |
"src": "126:13:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_Initializable_$417", | |
"typeString": "contract Initializable" | |
} | |
}, | |
"id": 291, | |
"nodeType": "InheritanceSpecifier", | |
"src": "126:13:2" | |
} | |
], | |
"contractDependencies": [ | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 319, | |
"linearizedBaseContracts": [ | |
319, | |
417, | |
464 | |
], | |
"name": "Petrifiable", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"constant": true, | |
"id": 297, | |
"name": "PETRIFIED_BLOCK", | |
"nodeType": "VariableDeclaration", | |
"scope": 319, | |
"src": "225:55:2", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 292, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "225:7:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 295, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "UnaryOperation", | |
"operator": "-", | |
"prefix": true, | |
"src": "277:2:2", | |
"subExpression": { | |
"argumentTypes": null, | |
"hexValue": "31", | |
"id": 294, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "278:1:2", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_1_by_1", | |
"typeString": "int_const 1" | |
}, | |
"value": "1" | |
}, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_-1_by_1", | |
"typeString": "int_const -1" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_rational_-1_by_1", | |
"typeString": "int_const -1" | |
} | |
], | |
"id": 293, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "ElementaryTypeNameExpression", | |
"src": "269:7:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_type$_t_uint256_$", | |
"typeString": "type(uint256)" | |
}, | |
"typeName": "uint256" | |
}, | |
"id": 296, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "typeConversion", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "269:11:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 307, | |
"nodeType": "Block", | |
"src": "337:67:2", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 305, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 302, | |
"name": "getInitializationBlock", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 369, | |
"src": "354:22:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 303, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "354:24:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "==", | |
"rightExpression": { | |
"argumentTypes": null, | |
"id": 304, | |
"name": "PETRIFIED_BLOCK", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 297, | |
"src": "382:15:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "354:43:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"functionReturnParameters": 301, | |
"id": 306, | |
"nodeType": "Return", | |
"src": "347:50:2" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 308, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "isPetrified", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 298, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "307:2:2" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 301, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 300, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 308, | |
"src": "331:4:2", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"typeName": { | |
"id": 299, | |
"name": "bool", | |
"nodeType": "ElementaryTypeName", | |
"src": "331:4:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "330:6:2" | |
}, | |
"scope": 319, | |
"src": "287:117:2", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
{ | |
"body": { | |
"id": 317, | |
"nodeType": "Block", | |
"src": "627:47:2", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 314, | |
"name": "PETRIFIED_BLOCK", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 297, | |
"src": "651:15:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"id": 313, | |
"name": "initializedAt", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 416, | |
"src": "637:13:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", | |
"typeString": "function (uint256)" | |
} | |
}, | |
"id": 315, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "637:30:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 316, | |
"nodeType": "ExpressionStatement", | |
"src": "637:30:2" | |
} | |
] | |
}, | |
"documentation": "@dev Function to be called by top level contract to prevent being initialized.\n Useful for freezing base contracts when they're used behind proxies.", | |
"id": 318, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [ | |
{ | |
"arguments": null, | |
"id": 311, | |
"modifierName": { | |
"argumentTypes": null, | |
"id": 310, | |
"name": "onlyInit", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 349, | |
"src": "618:8:2", | |
"typeDescriptions": { | |
"typeIdentifier": "t_modifier$__$", | |
"typeString": "modifier ()" | |
} | |
}, | |
"nodeType": "ModifierInvocation", | |
"src": "618:8:2" | |
} | |
], | |
"name": "petrify", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 309, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "606:2:2" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 312, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "627:0:2" | |
}, | |
"scope": 319, | |
"src": "590:84:2", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
} | |
], | |
"scope": 320, | |
"src": "102:574:2" | |
} | |
], | |
"src": "44:633:2" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Petrifiable.sol", | |
"exportedSymbols": { | |
"Petrifiable": [ | |
319 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 288, | |
"name": "PragmaDirective", | |
"src": "44:24:2" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 418, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Initializable.sol", | |
"file": "./Initializable.sol", | |
"scope": 320, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 289, | |
"name": "ImportDirective", | |
"src": "70:29:2" | |
}, | |
{ | |
"attributes": { | |
"contractDependencies": [ | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
319, | |
417, | |
464 | |
], | |
"name": "Petrifiable", | |
"scope": 320 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "Initializable", | |
"referencedDeclaration": 417, | |
"type": "contract Initializable" | |
}, | |
"id": 290, | |
"name": "UserDefinedTypeName", | |
"src": "126:13:2" | |
} | |
], | |
"id": 291, | |
"name": "InheritanceSpecifier", | |
"src": "126:13:2" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "PETRIFIED_BLOCK", | |
"scope": 319, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "uint256", | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 292, | |
"name": "ElementaryTypeName", | |
"src": "225:7:2" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": true | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_rational_-1_by_1", | |
"typeString": "int_const -1" | |
} | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"type": "type(uint256)", | |
"value": "uint256" | |
}, | |
"id": 293, | |
"name": "ElementaryTypeNameExpression", | |
"src": "269:7:2" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"operator": "-", | |
"prefix": true, | |
"type": "int_const -1" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "31", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 1", | |
"value": "1" | |
}, | |
"id": 294, | |
"name": "Literal", | |
"src": "278:1:2" | |
} | |
], | |
"id": 295, | |
"name": "UnaryOperation", | |
"src": "277:2:2" | |
} | |
], | |
"id": 296, | |
"name": "FunctionCall", | |
"src": "269:11:2" | |
} | |
], | |
"id": 297, | |
"name": "VariableDeclaration", | |
"src": "225:55:2" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "isPetrified", | |
"payable": false, | |
"scope": 319, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "public" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 298, | |
"name": "ParameterList", | |
"src": "307:2:2" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 308, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bool", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bool", | |
"type": "bool" | |
}, | |
"id": 299, | |
"name": "ElementaryTypeName", | |
"src": "331:4:2" | |
} | |
], | |
"id": 300, | |
"name": "VariableDeclaration", | |
"src": "331:4:2" | |
} | |
], | |
"id": 301, | |
"name": "ParameterList", | |
"src": "330:6:2" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 301 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"operator": "==", | |
"type": "bool" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 369, | |
"type": "function () view returns (uint256)", | |
"value": "getInitializationBlock" | |
}, | |
"id": 302, | |
"name": "Identifier", | |
"src": "354:22:2" | |
} | |
], | |
"id": 303, | |
"name": "FunctionCall", | |
"src": "354:24:2" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 297, | |
"type": "uint256", | |
"value": "PETRIFIED_BLOCK" | |
}, | |
"id": 304, | |
"name": "Identifier", | |
"src": "382:15:2" | |
} | |
], | |
"id": 305, | |
"name": "BinaryOperation", | |
"src": "354:43:2" | |
} | |
], | |
"id": 306, | |
"name": "Return", | |
"src": "347:50:2" | |
} | |
], | |
"id": 307, | |
"name": "Block", | |
"src": "337:67:2" | |
} | |
], | |
"id": 308, | |
"name": "FunctionDefinition", | |
"src": "287:117:2" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": "@dev Function to be called by top level contract to prevent being initialized.\n Useful for freezing base contracts when they're used behind proxies.", | |
"implemented": true, | |
"isConstructor": false, | |
"name": "petrify", | |
"payable": false, | |
"scope": 319, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 309, | |
"name": "ParameterList", | |
"src": "606:2:2" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 312, | |
"name": "ParameterList", | |
"src": "627:0:2" | |
}, | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 349, | |
"type": "modifier ()", | |
"value": "onlyInit" | |
}, | |
"id": 310, | |
"name": "Identifier", | |
"src": "618:8:2" | |
} | |
], | |
"id": 311, | |
"name": "ModifierInvocation", | |
"src": "618:8:2" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 416, | |
"type": "function (uint256)", | |
"value": "initializedAt" | |
}, | |
"id": 313, | |
"name": "Identifier", | |
"src": "637:13:2" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 297, | |
"type": "uint256", | |
"value": "PETRIFIED_BLOCK" | |
}, | |
"id": 314, | |
"name": "Identifier", | |
"src": "651:15:2" | |
} | |
], | |
"id": 315, | |
"name": "FunctionCall", | |
"src": "637:30:2" | |
} | |
], | |
"id": 316, | |
"name": "ExpressionStatement", | |
"src": "637:30:2" | |
} | |
], | |
"id": 317, | |
"name": "Block", | |
"src": "627:47:2" | |
} | |
], | |
"id": 318, | |
"name": "FunctionDefinition", | |
"src": "590:84:2" | |
} | |
], | |
"id": 319, | |
"name": "ContractDefinition", | |
"src": "102:574:2" | |
} | |
], | |
"id": 320, | |
"name": "SourceUnit", | |
"src": "44:633:2" | |
}, | |
"id": 2, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"./Initializable.sol\";\n\n\ncontract Petrifiable is Initializable {\n // Use block UINT256_MAX (which should be never) as the initializable date\n uint256 internal constant PETRIFIED_BLOCK = uint256(-1);\n\n function isPetrified() public view returns (bool) {\n return getInitializationBlock() == PETRIFIED_BLOCK;\n }\n\n /**\n * @dev Function to be called by top level contract to prevent being initialized.\n * Useful for freezing base contracts when they're used behind proxies.\n */\n function petrify() internal onlyInit {\n initializedAt(PETRIFIED_BLOCK);\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/common/TimeHelpers.sol": { | |
"contracts": [ | |
{ | |
"contractName": "TimeHelpers", | |
"bytecode": "0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a7230582026fe099480af4646ae647b12477c19c9c04a6834a6ac3009692af2f748d41d210029", | |
"deployedBytecode": "0x6080604052600080fd00a165627a7a7230582026fe099480af4646ae647b12477c19c9c04a6834a6ac3009692af2f748d41d210029", | |
"sourceMap": "103:1266:3:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;103:1266:3;;;;;;;", | |
"deployedSourceMap": "103:1266:3:-;;;;;" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/TimeHelpers.sol", | |
"exportedSymbols": { | |
"TimeHelpers": [ | |
464 | |
] | |
}, | |
"id": 465, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 419, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:3" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Uint256Helpers.sol", | |
"file": "./Uint256Helpers.sol", | |
"id": 420, | |
"nodeType": "ImportDirective", | |
"scope": 465, | |
"sourceUnit": 571, | |
"src": "70:30:3", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 464, | |
"linearizedBaseContracts": [ | |
464 | |
], | |
"name": "TimeHelpers", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"id": 423, | |
"libraryName": { | |
"contractScope": null, | |
"id": 421, | |
"name": "Uint256Helpers", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 570, | |
"src": "136:14:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_Uint256Helpers_$570", | |
"typeString": "library Uint256Helpers" | |
} | |
}, | |
"nodeType": "UsingForDirective", | |
"src": "130:33:3", | |
"typeName": { | |
"id": 422, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "155:7:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
}, | |
{ | |
"body": { | |
"id": 431, | |
"nodeType": "Block", | |
"src": "405:36:3", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"expression": { | |
"argumentTypes": null, | |
"id": 428, | |
"name": "block", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 575, | |
"src": "422:5:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_magic_block", | |
"typeString": "block" | |
} | |
}, | |
"id": 429, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "number", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": null, | |
"src": "422:12:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"functionReturnParameters": 427, | |
"id": 430, | |
"nodeType": "Return", | |
"src": "415:19:3" | |
} | |
] | |
}, | |
"documentation": "@dev Returns the current block number.\n Using a function rather than `block.number` allows us to easily mock the block number in\n tests.", | |
"id": 432, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getBlockNumber", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 424, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "370:2:3" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 427, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 426, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 432, | |
"src": "396:7:3", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 425, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "396:7:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "395:9:3" | |
}, | |
"scope": 464, | |
"src": "347:94:3", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 442, | |
"nodeType": "Block", | |
"src": "705:51:3", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 437, | |
"name": "getBlockNumber", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 432, | |
"src": "722:14:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 438, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "722:16:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"id": 439, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "toUint64", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 569, | |
"src": "722:25:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint64_$bound_to$_t_uint256_$", | |
"typeString": "function (uint256) pure returns (uint64)" | |
} | |
}, | |
"id": 440, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "722:27:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"functionReturnParameters": 436, | |
"id": 441, | |
"nodeType": "Return", | |
"src": "715:34:3" | |
} | |
] | |
}, | |
"documentation": "@dev Returns the current block number, converted to uint64.\n Using a function rather than `block.number` allows us to easily mock the block number in\n tests.", | |
"id": 443, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getBlockNumber64", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 433, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "671:2:3" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 436, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 435, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 443, | |
"src": "697:6:3", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
}, | |
"typeName": { | |
"id": 434, | |
"name": "uint64", | |
"nodeType": "ElementaryTypeName", | |
"src": "697:6:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "696:8:3" | |
}, | |
"scope": 464, | |
"src": "646:110:3", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 451, | |
"nodeType": "Block", | |
"src": "982:88:3", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"expression": { | |
"argumentTypes": null, | |
"id": 448, | |
"name": "block", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 575, | |
"src": "999:5:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_magic_block", | |
"typeString": "block" | |
} | |
}, | |
"id": 449, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "timestamp", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": null, | |
"src": "999:15:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"functionReturnParameters": 447, | |
"id": 450, | |
"nodeType": "Return", | |
"src": "992:22:3" | |
} | |
] | |
}, | |
"documentation": "@dev Returns the current timestamp.\n Using a function rather than `block.timestamp` allows us to easily mock it in\n tests.", | |
"id": 452, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getTimestamp", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 444, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "947:2:3" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 447, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 446, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 452, | |
"src": "973:7:3", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 445, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "973:7:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "972:9:3" | |
}, | |
"scope": 464, | |
"src": "926:144:3", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 462, | |
"nodeType": "Block", | |
"src": "1318:49:3", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"id": 457, | |
"name": "getTimestamp", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 452, | |
"src": "1335:12:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", | |
"typeString": "function () view returns (uint256)" | |
} | |
}, | |
"id": 458, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1335:14:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"id": 459, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "toUint64", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 569, | |
"src": "1335:23:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint64_$bound_to$_t_uint256_$", | |
"typeString": "function (uint256) pure returns (uint64)" | |
} | |
}, | |
"id": 460, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1335:25:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"functionReturnParameters": 456, | |
"id": 461, | |
"nodeType": "Return", | |
"src": "1328:32:3" | |
} | |
] | |
}, | |
"documentation": "@dev Returns the current timestamp, converted to uint64.\n Using a function rather than `block.timestamp` allows us to easily mock it in\n tests.", | |
"id": 463, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getTimestamp64", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 453, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "1284:2:3" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 456, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 455, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 463, | |
"src": "1310:6:3", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
}, | |
"typeName": { | |
"id": 454, | |
"name": "uint64", | |
"nodeType": "ElementaryTypeName", | |
"src": "1310:6:3", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1309:8:3" | |
}, | |
"scope": 464, | |
"src": "1261:106:3", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
} | |
], | |
"scope": 465, | |
"src": "103:1266:3" | |
} | |
], | |
"src": "44:1326:3" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/TimeHelpers.sol", | |
"exportedSymbols": { | |
"TimeHelpers": [ | |
464 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 419, | |
"name": "PragmaDirective", | |
"src": "44:24:3" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 571, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Uint256Helpers.sol", | |
"file": "./Uint256Helpers.sol", | |
"scope": 465, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 420, | |
"name": "ImportDirective", | |
"src": "70:30:3" | |
}, | |
{ | |
"attributes": { | |
"baseContracts": [ | |
null | |
], | |
"contractDependencies": [ | |
null | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
464 | |
], | |
"name": "TimeHelpers", | |
"scope": 465 | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "Uint256Helpers", | |
"referencedDeclaration": 570, | |
"type": "library Uint256Helpers" | |
}, | |
"id": 421, | |
"name": "UserDefinedTypeName", | |
"src": "136:14:3" | |
}, | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 422, | |
"name": "ElementaryTypeName", | |
"src": "155:7:3" | |
} | |
], | |
"id": 423, | |
"name": "UsingForDirective", | |
"src": "130:33:3" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": "@dev Returns the current block number.\n Using a function rather than `block.number` allows us to easily mock the block number in\n tests.", | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getBlockNumber", | |
"payable": false, | |
"scope": 464, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 424, | |
"name": "ParameterList", | |
"src": "370:2:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 432, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 425, | |
"name": "ElementaryTypeName", | |
"src": "396:7:3" | |
} | |
], | |
"id": 426, | |
"name": "VariableDeclaration", | |
"src": "396:7:3" | |
} | |
], | |
"id": 427, | |
"name": "ParameterList", | |
"src": "395:9:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 427 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "number", | |
"referencedDeclaration": null, | |
"type": "uint256" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 575, | |
"type": "block", | |
"value": "block" | |
}, | |
"id": 428, | |
"name": "Identifier", | |
"src": "422:5:3" | |
} | |
], | |
"id": 429, | |
"name": "MemberAccess", | |
"src": "422:12:3" | |
} | |
], | |
"id": 430, | |
"name": "Return", | |
"src": "415:19:3" | |
} | |
], | |
"id": 431, | |
"name": "Block", | |
"src": "405:36:3" | |
} | |
], | |
"id": 432, | |
"name": "FunctionDefinition", | |
"src": "347:94:3" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": "@dev Returns the current block number, converted to uint64.\n Using a function rather than `block.number` allows us to easily mock the block number in\n tests.", | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getBlockNumber64", | |
"payable": false, | |
"scope": 464, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 433, | |
"name": "ParameterList", | |
"src": "671:2:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 443, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint64", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint64", | |
"type": "uint64" | |
}, | |
"id": 434, | |
"name": "ElementaryTypeName", | |
"src": "697:6:3" | |
} | |
], | |
"id": 435, | |
"name": "VariableDeclaration", | |
"src": "697:6:3" | |
} | |
], | |
"id": 436, | |
"name": "ParameterList", | |
"src": "696:8:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 436 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint64", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "toUint64", | |
"referencedDeclaration": 569, | |
"type": "function (uint256) pure returns (uint64)" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 432, | |
"type": "function () view returns (uint256)", | |
"value": "getBlockNumber" | |
}, | |
"id": 437, | |
"name": "Identifier", | |
"src": "722:14:3" | |
} | |
], | |
"id": 438, | |
"name": "FunctionCall", | |
"src": "722:16:3" | |
} | |
], | |
"id": 439, | |
"name": "MemberAccess", | |
"src": "722:25:3" | |
} | |
], | |
"id": 440, | |
"name": "FunctionCall", | |
"src": "722:27:3" | |
} | |
], | |
"id": 441, | |
"name": "Return", | |
"src": "715:34:3" | |
} | |
], | |
"id": 442, | |
"name": "Block", | |
"src": "705:51:3" | |
} | |
], | |
"id": 443, | |
"name": "FunctionDefinition", | |
"src": "646:110:3" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": "@dev Returns the current timestamp.\n Using a function rather than `block.timestamp` allows us to easily mock it in\n tests.", | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getTimestamp", | |
"payable": false, | |
"scope": 464, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 444, | |
"name": "ParameterList", | |
"src": "947:2:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 452, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 445, | |
"name": "ElementaryTypeName", | |
"src": "973:7:3" | |
} | |
], | |
"id": 446, | |
"name": "VariableDeclaration", | |
"src": "973:7:3" | |
} | |
], | |
"id": 447, | |
"name": "ParameterList", | |
"src": "972:9:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 447 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "timestamp", | |
"referencedDeclaration": null, | |
"type": "uint256" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 575, | |
"type": "block", | |
"value": "block" | |
}, | |
"id": 448, | |
"name": "Identifier", | |
"src": "999:5:3" | |
} | |
], | |
"id": 449, | |
"name": "MemberAccess", | |
"src": "999:15:3" | |
} | |
], | |
"id": 450, | |
"name": "Return", | |
"src": "992:22:3" | |
} | |
], | |
"id": 451, | |
"name": "Block", | |
"src": "982:88:3" | |
} | |
], | |
"id": 452, | |
"name": "FunctionDefinition", | |
"src": "926:144:3" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": "@dev Returns the current timestamp, converted to uint64.\n Using a function rather than `block.timestamp` allows us to easily mock it in\n tests.", | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getTimestamp64", | |
"payable": false, | |
"scope": 464, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 453, | |
"name": "ParameterList", | |
"src": "1284:2:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 463, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint64", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint64", | |
"type": "uint64" | |
}, | |
"id": 454, | |
"name": "ElementaryTypeName", | |
"src": "1310:6:3" | |
} | |
], | |
"id": 455, | |
"name": "VariableDeclaration", | |
"src": "1310:6:3" | |
} | |
], | |
"id": 456, | |
"name": "ParameterList", | |
"src": "1309:8:3" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 456 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint64", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"member_name": "toUint64", | |
"referencedDeclaration": 569, | |
"type": "function (uint256) pure returns (uint64)" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"arguments": [ | |
null | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
null | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 452, | |
"type": "function () view returns (uint256)", | |
"value": "getTimestamp" | |
}, | |
"id": 457, | |
"name": "Identifier", | |
"src": "1335:12:3" | |
} | |
], | |
"id": 458, | |
"name": "FunctionCall", | |
"src": "1335:14:3" | |
} | |
], | |
"id": 459, | |
"name": "MemberAccess", | |
"src": "1335:23:3" | |
} | |
], | |
"id": 460, | |
"name": "FunctionCall", | |
"src": "1335:25:3" | |
} | |
], | |
"id": 461, | |
"name": "Return", | |
"src": "1328:32:3" | |
} | |
], | |
"id": 462, | |
"name": "Block", | |
"src": "1318:49:3" | |
} | |
], | |
"id": 463, | |
"name": "FunctionDefinition", | |
"src": "1261:106:3" | |
} | |
], | |
"id": 464, | |
"name": "ContractDefinition", | |
"src": "103:1266:3" | |
} | |
], | |
"id": 465, | |
"name": "SourceUnit", | |
"src": "44:1326:3" | |
}, | |
"id": 3, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"./Uint256Helpers.sol\";\n\n\ncontract TimeHelpers {\n using Uint256Helpers for uint256;\n\n /**\n * @dev Returns the current block number.\n * Using a function rather than `block.number` allows us to easily mock the block number in\n * tests.\n */\n function getBlockNumber() internal view returns (uint256) {\n return block.number;\n }\n\n /**\n * @dev Returns the current block number, converted to uint64.\n * Using a function rather than `block.number` allows us to easily mock the block number in\n * tests.\n */\n function getBlockNumber64() internal view returns (uint64) {\n return getBlockNumber().toUint64();\n }\n\n /**\n * @dev Returns the current timestamp.\n * Using a function rather than `block.timestamp` allows us to easily mock it in\n * tests.\n */\n function getTimestamp() internal view returns (uint256) {\n return block.timestamp; // solium-disable-line security/no-block-members\n }\n\n /**\n * @dev Returns the current timestamp, converted to uint64.\n * Using a function rather than `block.timestamp` allows us to easily mock it in\n * tests.\n */\n function getTimestamp64() internal view returns (uint64) {\n return getTimestamp().toUint64();\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/common/Uint256Helpers.sol": { | |
"contracts": [ | |
{ | |
"contractName": "Uint256Helpers", | |
"bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820146ac3304d493ffff85ab478a537c583dc1b048606d96bf8020f7eb82f1316590029", | |
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820146ac3304d493ffff85ab478a537c583dc1b048606d96bf8020f7eb82f1316590029", | |
"sourceMap": "27:312:4:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", | |
"deployedSourceMap": "27:312:4:-;;;;;;;;" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Uint256Helpers.sol", | |
"exportedSymbols": { | |
"Uint256Helpers": [ | |
570 | |
] | |
}, | |
"id": 571, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 541, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "0:24:4" | |
}, | |
{ | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "library", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 570, | |
"linearizedBaseContracts": [ | |
570 | |
], | |
"name": "Uint256Helpers", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"constant": true, | |
"id": 547, | |
"name": "MAX_UINT64", | |
"nodeType": "VariableDeclaration", | |
"scope": 570, | |
"src": "56:48:4", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 542, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "56:7:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 545, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "UnaryOperation", | |
"operator": "-", | |
"prefix": true, | |
"src": "101:2:4", | |
"subExpression": { | |
"argumentTypes": null, | |
"hexValue": "31", | |
"id": 544, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "102:1:4", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_1_by_1", | |
"typeString": "int_const 1" | |
}, | |
"value": "1" | |
}, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_-1_by_1", | |
"typeString": "int_const -1" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_rational_-1_by_1", | |
"typeString": "int_const -1" | |
} | |
], | |
"id": 543, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "ElementaryTypeNameExpression", | |
"src": "94:6:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_type$_t_uint64_$", | |
"typeString": "type(uint64)" | |
}, | |
"typeName": "uint64" | |
}, | |
"id": 546, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "typeConversion", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "94:10:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"constant": true, | |
"id": 550, | |
"name": "ERROR_NUMBER_TOO_BIG", | |
"nodeType": "VariableDeclaration", | |
"scope": 570, | |
"src": "111:70:4", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 548, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "111:6:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "55494e5436345f4e554d4245525f544f4f5f424947", | |
"id": 549, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "string", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "158:23:4", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_stringliteral_0097450fa85b09f7141faf60e71f2a076ecfed0c9fa787056beef57ff0d975db", | |
"typeString": "literal_string \"UINT64_NUMBER_TOO_BIG\"" | |
}, | |
"value": "UINT64_NUMBER_TOO_BIG" | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"body": { | |
"id": 568, | |
"nodeType": "Block", | |
"src": "248:89:4", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 560, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 558, | |
"name": "a", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 552, | |
"src": "266:1:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "<=", | |
"rightExpression": { | |
"argumentTypes": null, | |
"id": 559, | |
"name": "MAX_UINT64", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 547, | |
"src": "271:10:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "266:15:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 561, | |
"name": "ERROR_NUMBER_TOO_BIG", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 550, | |
"src": "283:20:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"id": 557, | |
"name": "require", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"src": "258:7:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", | |
"typeString": "function (bool,string memory) pure" | |
} | |
}, | |
"id": 562, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "258:46:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 563, | |
"nodeType": "ExpressionStatement", | |
"src": "258:46:4" | |
}, | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 565, | |
"name": "a", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 552, | |
"src": "328:1:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"id": 564, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "ElementaryTypeNameExpression", | |
"src": "321:6:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_type$_t_uint64_$", | |
"typeString": "type(uint64)" | |
}, | |
"typeName": "uint64" | |
}, | |
"id": 566, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "typeConversion", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "321:9:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"functionReturnParameters": 556, | |
"id": 567, | |
"nodeType": "Return", | |
"src": "314:16:4" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 569, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "toUint64", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 553, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 552, | |
"name": "a", | |
"nodeType": "VariableDeclaration", | |
"scope": 569, | |
"src": "206:9:4", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 551, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "206:7:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "205:11:4" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 556, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 555, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 569, | |
"src": "240:6:4", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
}, | |
"typeName": { | |
"id": 554, | |
"name": "uint64", | |
"nodeType": "ElementaryTypeName", | |
"src": "240:6:4", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint64", | |
"typeString": "uint64" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "239:8:4" | |
}, | |
"scope": 570, | |
"src": "188:149:4", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
} | |
], | |
"scope": 571, | |
"src": "27:312:4" | |
} | |
], | |
"src": "0:340:4" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Uint256Helpers.sol", | |
"exportedSymbols": { | |
"Uint256Helpers": [ | |
570 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 541, | |
"name": "PragmaDirective", | |
"src": "0:24:4" | |
}, | |
{ | |
"attributes": { | |
"baseContracts": [ | |
null | |
], | |
"contractDependencies": [ | |
null | |
], | |
"contractKind": "library", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
570 | |
], | |
"name": "Uint256Helpers", | |
"scope": 571 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "MAX_UINT64", | |
"scope": 570, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "uint256", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 542, | |
"name": "ElementaryTypeName", | |
"src": "56:7:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint64", | |
"type_conversion": true | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_rational_-1_by_1", | |
"typeString": "int_const -1" | |
} | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"type": "type(uint64)", | |
"value": "uint64" | |
}, | |
"id": 543, | |
"name": "ElementaryTypeNameExpression", | |
"src": "94:6:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"operator": "-", | |
"prefix": true, | |
"type": "int_const -1" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "31", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 1", | |
"value": "1" | |
}, | |
"id": 544, | |
"name": "Literal", | |
"src": "102:1:4" | |
} | |
], | |
"id": 545, | |
"name": "UnaryOperation", | |
"src": "101:2:4" | |
} | |
], | |
"id": 546, | |
"name": "FunctionCall", | |
"src": "94:10:4" | |
} | |
], | |
"id": 547, | |
"name": "VariableDeclaration", | |
"src": "56:48:4" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "ERROR_NUMBER_TOO_BIG", | |
"scope": 570, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "string", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "string", | |
"type": "string" | |
}, | |
"id": 548, | |
"name": "ElementaryTypeName", | |
"src": "111:6:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "55494e5436345f4e554d4245525f544f4f5f424947", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "string", | |
"type": "literal_string \"UINT64_NUMBER_TOO_BIG\"", | |
"value": "UINT64_NUMBER_TOO_BIG" | |
}, | |
"id": 549, | |
"name": "Literal", | |
"src": "158:23:4" | |
} | |
], | |
"id": 550, | |
"name": "VariableDeclaration", | |
"src": "111:70:4" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "toUint64", | |
"payable": false, | |
"scope": 570, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "a", | |
"scope": 569, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 551, | |
"name": "ElementaryTypeName", | |
"src": "206:7:4" | |
} | |
], | |
"id": 552, | |
"name": "VariableDeclaration", | |
"src": "206:9:4" | |
} | |
], | |
"id": 553, | |
"name": "ParameterList", | |
"src": "205:11:4" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 569, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint64", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint64", | |
"type": "uint64" | |
}, | |
"id": 554, | |
"name": "ElementaryTypeName", | |
"src": "240:6:4" | |
} | |
], | |
"id": 555, | |
"name": "VariableDeclaration", | |
"src": "240:6:4" | |
} | |
], | |
"id": 556, | |
"name": "ParameterList", | |
"src": "239:8:4" | |
}, | |
{ | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "tuple()", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"type": "function (bool,string memory) pure", | |
"value": "require" | |
}, | |
"id": 557, | |
"name": "Identifier", | |
"src": "258:7:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"operator": "<=", | |
"type": "bool" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 552, | |
"type": "uint256", | |
"value": "a" | |
}, | |
"id": 558, | |
"name": "Identifier", | |
"src": "266:1:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 547, | |
"type": "uint256", | |
"value": "MAX_UINT64" | |
}, | |
"id": 559, | |
"name": "Identifier", | |
"src": "271:10:4" | |
} | |
], | |
"id": 560, | |
"name": "BinaryOperation", | |
"src": "266:15:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 550, | |
"type": "string memory", | |
"value": "ERROR_NUMBER_TOO_BIG" | |
}, | |
"id": 561, | |
"name": "Identifier", | |
"src": "283:20:4" | |
} | |
], | |
"id": 562, | |
"name": "FunctionCall", | |
"src": "258:46:4" | |
} | |
], | |
"id": 563, | |
"name": "ExpressionStatement", | |
"src": "258:46:4" | |
}, | |
{ | |
"attributes": { | |
"functionReturnParameters": 556 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint64", | |
"type_conversion": true | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"type": "type(uint64)", | |
"value": "uint64" | |
}, | |
"id": 564, | |
"name": "ElementaryTypeNameExpression", | |
"src": "321:6:4" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 552, | |
"type": "uint256", | |
"value": "a" | |
}, | |
"id": 565, | |
"name": "Identifier", | |
"src": "328:1:4" | |
} | |
], | |
"id": 566, | |
"name": "FunctionCall", | |
"src": "321:9:4" | |
} | |
], | |
"id": 567, | |
"name": "Return", | |
"src": "314:16:4" | |
} | |
], | |
"id": 568, | |
"name": "Block", | |
"src": "248:89:4" | |
} | |
], | |
"id": 569, | |
"name": "FunctionDefinition", | |
"src": "188:149:4" | |
} | |
], | |
"id": 570, | |
"name": "ContractDefinition", | |
"src": "27:312:4" | |
} | |
], | |
"id": 571, | |
"name": "SourceUnit", | |
"src": "0:340:4" | |
}, | |
"id": 4, | |
"source": "pragma solidity ^0.4.24;\n\n\nlibrary Uint256Helpers {\n uint256 private constant MAX_UINT64 = uint64(-1);\n\n string private constant ERROR_NUMBER_TOO_BIG = \"UINT64_NUMBER_TOO_BIG\";\n\n function toUint64(uint256 a) internal pure returns (uint64) {\n require(a <= MAX_UINT64, ERROR_NUMBER_TOO_BIG);\n return uint64(a);\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/common/UnstructuredStorage.sol": { | |
"contracts": [ | |
{ | |
"contractName": "UnstructuredStorage", | |
"bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820d58cd12df0f7d63dd5eaacafe641433e3e3cfbfd9a1270850beaa70ba47b14d10029", | |
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820d58cd12df0f7d63dd5eaacafe641433e3e3cfbfd9a1270850beaa70ba47b14d10029", | |
"sourceMap": "71:1078:5:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", | |
"deployedSourceMap": "71:1078:5:-;;;;;;;;" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/UnstructuredStorage.sol", | |
"exportedSymbols": { | |
"UnstructuredStorage": [ | |
539 | |
] | |
}, | |
"id": 540, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 466, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:5" | |
}, | |
{ | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "library", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 539, | |
"linearizedBaseContracts": [ | |
539 | |
], | |
"name": "UnstructuredStorage", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"body": { | |
"id": 474, | |
"nodeType": "Block", | |
"src": "181:52:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 468, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "216:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 471, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "202:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 473, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n data := sload(position)\n}", | |
"src": "191:42:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 475, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getStorageBool", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 469, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 468, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 475, | |
"src": "129:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 467, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "129:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "128:18:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 472, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 471, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 475, | |
"src": "170:9:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"typeName": { | |
"id": 470, | |
"name": "bool", | |
"nodeType": "ElementaryTypeName", | |
"src": "170:4:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "169:11:5" | |
}, | |
"scope": 539, | |
"src": "105:128:5", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 483, | |
"nodeType": "Block", | |
"src": "321:52:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 477, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "356:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 480, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "342:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 482, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n data := sload(position)\n}", | |
"src": "331:42:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 484, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getStorageAddress", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 478, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 477, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 484, | |
"src": "266:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 476, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "266:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "265:18:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 481, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 480, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 484, | |
"src": "307:12:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 479, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "307:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "306:14:5" | |
}, | |
"scope": 539, | |
"src": "239:134:5", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 492, | |
"nodeType": "Block", | |
"src": "461:52:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 486, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "496:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 489, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "482:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 491, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n data := sload(position)\n}", | |
"src": "471:42:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 493, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getStorageBytes32", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 487, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 486, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 493, | |
"src": "406:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 485, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "406:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "405:18:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 490, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 489, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 493, | |
"src": "447:12:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 488, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "447:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "446:14:5" | |
}, | |
"scope": 539, | |
"src": "379:134:5", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 501, | |
"nodeType": "Block", | |
"src": "601:52:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 495, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "636:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 498, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "622:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 500, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n data := sload(position)\n}", | |
"src": "611:42:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 502, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getStorageUint256", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 496, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 495, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 502, | |
"src": "546:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 494, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "546:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "545:18:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 499, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 498, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 502, | |
"src": "587:12:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 497, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "587:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "586:14:5" | |
}, | |
"scope": 539, | |
"src": "519:134:5", | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 510, | |
"nodeType": "Block", | |
"src": "721:51:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 504, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "749:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 506, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "759:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 509, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n sstore(position, data)\n}", | |
"src": "731:41:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 511, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [], | |
"name": "setStorageBool", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 507, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 504, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 511, | |
"src": "683:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 503, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "683:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 506, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 511, | |
"src": "701:9:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"typeName": { | |
"id": 505, | |
"name": "bool", | |
"nodeType": "ElementaryTypeName", | |
"src": "701:4:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "682:29:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 508, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "721:0:5" | |
}, | |
"scope": 539, | |
"src": "659:113:5", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 519, | |
"nodeType": "Block", | |
"src": "846:51:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 513, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "874:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 515, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "884:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 518, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n sstore(position, data)\n}", | |
"src": "856:41:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 520, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [], | |
"name": "setStorageAddress", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 516, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 513, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 520, | |
"src": "805:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 512, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "805:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 515, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 520, | |
"src": "823:12:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 514, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "823:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "804:32:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 517, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "846:0:5" | |
}, | |
"scope": 539, | |
"src": "778:119:5", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 528, | |
"nodeType": "Block", | |
"src": "971:51:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 522, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "999:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 524, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1009:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 527, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n sstore(position, data)\n}", | |
"src": "981:41:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 529, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [], | |
"name": "setStorageBytes32", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 525, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 522, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 529, | |
"src": "930:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 521, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "930:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 524, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 529, | |
"src": "948:12:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 523, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "948:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "929:32:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 526, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "971:0:5" | |
}, | |
"scope": 539, | |
"src": "903:119:5", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 537, | |
"nodeType": "Block", | |
"src": "1096:51:5", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 531, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1124:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 533, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1134:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 536, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n sstore(position, data)\n}", | |
"src": "1106:41:5" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 538, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [], | |
"name": "setStorageUint256", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 534, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 531, | |
"name": "position", | |
"nodeType": "VariableDeclaration", | |
"scope": 538, | |
"src": "1055:16:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 530, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "1055:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 533, | |
"name": "data", | |
"nodeType": "VariableDeclaration", | |
"scope": 538, | |
"src": "1073:12:5", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 532, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1073:7:5", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1054:32:5" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 535, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "1096:0:5" | |
}, | |
"scope": 539, | |
"src": "1028:119:5", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
} | |
], | |
"scope": 540, | |
"src": "71:1078:5" | |
} | |
], | |
"src": "44:1106:5" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/UnstructuredStorage.sol", | |
"exportedSymbols": { | |
"UnstructuredStorage": [ | |
539 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 466, | |
"name": "PragmaDirective", | |
"src": "44:24:5" | |
}, | |
{ | |
"attributes": { | |
"baseContracts": [ | |
null | |
], | |
"contractDependencies": [ | |
null | |
], | |
"contractKind": "library", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
539 | |
], | |
"name": "UnstructuredStorage", | |
"scope": 540 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getStorageBool", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 475, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 467, | |
"name": "ElementaryTypeName", | |
"src": "129:7:5" | |
} | |
], | |
"id": 468, | |
"name": "VariableDeclaration", | |
"src": "129:16:5" | |
} | |
], | |
"id": 469, | |
"name": "ParameterList", | |
"src": "128:18:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 475, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bool", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bool", | |
"type": "bool" | |
}, | |
"id": 470, | |
"name": "ElementaryTypeName", | |
"src": "170:4:5" | |
} | |
], | |
"id": 471, | |
"name": "VariableDeclaration", | |
"src": "170:9:5" | |
} | |
], | |
"id": 472, | |
"name": "ParameterList", | |
"src": "169:11:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 468, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "216:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 471, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "202:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n data := sload(position)\n}" | |
}, | |
"children": [], | |
"id": 473, | |
"name": "InlineAssembly", | |
"src": "191:42:5" | |
} | |
], | |
"id": 474, | |
"name": "Block", | |
"src": "181:52:5" | |
} | |
], | |
"id": 475, | |
"name": "FunctionDefinition", | |
"src": "105:128:5" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getStorageAddress", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 484, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 476, | |
"name": "ElementaryTypeName", | |
"src": "266:7:5" | |
} | |
], | |
"id": 477, | |
"name": "VariableDeclaration", | |
"src": "266:16:5" | |
} | |
], | |
"id": 478, | |
"name": "ParameterList", | |
"src": "265:18:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 484, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 479, | |
"name": "ElementaryTypeName", | |
"src": "307:7:5" | |
} | |
], | |
"id": 480, | |
"name": "VariableDeclaration", | |
"src": "307:12:5" | |
} | |
], | |
"id": 481, | |
"name": "ParameterList", | |
"src": "306:14:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 477, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "356:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 480, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "342:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n data := sload(position)\n}" | |
}, | |
"children": [], | |
"id": 482, | |
"name": "InlineAssembly", | |
"src": "331:42:5" | |
} | |
], | |
"id": 483, | |
"name": "Block", | |
"src": "321:52:5" | |
} | |
], | |
"id": 484, | |
"name": "FunctionDefinition", | |
"src": "239:134:5" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getStorageBytes32", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 493, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 485, | |
"name": "ElementaryTypeName", | |
"src": "406:7:5" | |
} | |
], | |
"id": 486, | |
"name": "VariableDeclaration", | |
"src": "406:16:5" | |
} | |
], | |
"id": 487, | |
"name": "ParameterList", | |
"src": "405:18:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 493, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 488, | |
"name": "ElementaryTypeName", | |
"src": "447:7:5" | |
} | |
], | |
"id": 489, | |
"name": "VariableDeclaration", | |
"src": "447:12:5" | |
} | |
], | |
"id": 490, | |
"name": "ParameterList", | |
"src": "446:14:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 486, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "496:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 489, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "482:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n data := sload(position)\n}" | |
}, | |
"children": [], | |
"id": 491, | |
"name": "InlineAssembly", | |
"src": "471:42:5" | |
} | |
], | |
"id": 492, | |
"name": "Block", | |
"src": "461:52:5" | |
} | |
], | |
"id": 493, | |
"name": "FunctionDefinition", | |
"src": "379:134:5" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getStorageUint256", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "view", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 502, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 494, | |
"name": "ElementaryTypeName", | |
"src": "546:7:5" | |
} | |
], | |
"id": 495, | |
"name": "VariableDeclaration", | |
"src": "546:16:5" | |
} | |
], | |
"id": 496, | |
"name": "ParameterList", | |
"src": "545:18:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 502, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 497, | |
"name": "ElementaryTypeName", | |
"src": "587:7:5" | |
} | |
], | |
"id": 498, | |
"name": "VariableDeclaration", | |
"src": "587:12:5" | |
} | |
], | |
"id": 499, | |
"name": "ParameterList", | |
"src": "586:14:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 495, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "636:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 498, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "622:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n data := sload(position)\n}" | |
}, | |
"children": [], | |
"id": 500, | |
"name": "InlineAssembly", | |
"src": "611:42:5" | |
} | |
], | |
"id": 501, | |
"name": "Block", | |
"src": "601:52:5" | |
} | |
], | |
"id": 502, | |
"name": "FunctionDefinition", | |
"src": "519:134:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "setStorageBool", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 511, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 503, | |
"name": "ElementaryTypeName", | |
"src": "683:7:5" | |
} | |
], | |
"id": 504, | |
"name": "VariableDeclaration", | |
"src": "683:16:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 511, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bool", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bool", | |
"type": "bool" | |
}, | |
"id": 505, | |
"name": "ElementaryTypeName", | |
"src": "701:4:5" | |
} | |
], | |
"id": 506, | |
"name": "VariableDeclaration", | |
"src": "701:9:5" | |
} | |
], | |
"id": 507, | |
"name": "ParameterList", | |
"src": "682:29:5" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 508, | |
"name": "ParameterList", | |
"src": "721:0:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 504, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "749:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 506, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "759:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n sstore(position, data)\n}" | |
}, | |
"children": [], | |
"id": 509, | |
"name": "InlineAssembly", | |
"src": "731:41:5" | |
} | |
], | |
"id": 510, | |
"name": "Block", | |
"src": "721:51:5" | |
} | |
], | |
"id": 511, | |
"name": "FunctionDefinition", | |
"src": "659:113:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "setStorageAddress", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 520, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 512, | |
"name": "ElementaryTypeName", | |
"src": "805:7:5" | |
} | |
], | |
"id": 513, | |
"name": "VariableDeclaration", | |
"src": "805:16:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 520, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 514, | |
"name": "ElementaryTypeName", | |
"src": "823:7:5" | |
} | |
], | |
"id": 515, | |
"name": "VariableDeclaration", | |
"src": "823:12:5" | |
} | |
], | |
"id": 516, | |
"name": "ParameterList", | |
"src": "804:32:5" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 517, | |
"name": "ParameterList", | |
"src": "846:0:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 513, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "874:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 515, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "884:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n sstore(position, data)\n}" | |
}, | |
"children": [], | |
"id": 518, | |
"name": "InlineAssembly", | |
"src": "856:41:5" | |
} | |
], | |
"id": 519, | |
"name": "Block", | |
"src": "846:51:5" | |
} | |
], | |
"id": 520, | |
"name": "FunctionDefinition", | |
"src": "778:119:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "setStorageBytes32", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 529, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 521, | |
"name": "ElementaryTypeName", | |
"src": "930:7:5" | |
} | |
], | |
"id": 522, | |
"name": "VariableDeclaration", | |
"src": "930:16:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 529, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 523, | |
"name": "ElementaryTypeName", | |
"src": "948:7:5" | |
} | |
], | |
"id": 524, | |
"name": "VariableDeclaration", | |
"src": "948:12:5" | |
} | |
], | |
"id": 525, | |
"name": "ParameterList", | |
"src": "929:32:5" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 526, | |
"name": "ParameterList", | |
"src": "971:0:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 522, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "999:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 524, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1009:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n sstore(position, data)\n}" | |
}, | |
"children": [], | |
"id": 527, | |
"name": "InlineAssembly", | |
"src": "981:41:5" | |
} | |
], | |
"id": 528, | |
"name": "Block", | |
"src": "971:51:5" | |
} | |
], | |
"id": 529, | |
"name": "FunctionDefinition", | |
"src": "903:119:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "setStorageUint256", | |
"payable": false, | |
"scope": 539, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "position", | |
"scope": 538, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 530, | |
"name": "ElementaryTypeName", | |
"src": "1055:7:5" | |
} | |
], | |
"id": 531, | |
"name": "VariableDeclaration", | |
"src": "1055:16:5" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "data", | |
"scope": 538, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 532, | |
"name": "ElementaryTypeName", | |
"src": "1073:7:5" | |
} | |
], | |
"id": 533, | |
"name": "VariableDeclaration", | |
"src": "1073:12:5" | |
} | |
], | |
"id": 534, | |
"name": "ParameterList", | |
"src": "1054:32:5" | |
}, | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 535, | |
"name": "ParameterList", | |
"src": "1096:0:5" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"position": { | |
"declaration": 531, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1124:8:5", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"data": { | |
"declaration": 533, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1134:4:5", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n sstore(position, data)\n}" | |
}, | |
"children": [], | |
"id": 536, | |
"name": "InlineAssembly", | |
"src": "1106:41:5" | |
} | |
], | |
"id": 537, | |
"name": "Block", | |
"src": "1096:51:5" | |
} | |
], | |
"id": 538, | |
"name": "FunctionDefinition", | |
"src": "1028:119:5" | |
} | |
], | |
"id": 539, | |
"name": "ContractDefinition", | |
"src": "71:1078:5" | |
} | |
], | |
"id": 540, | |
"name": "SourceUnit", | |
"src": "44:1106:5" | |
}, | |
"id": 5, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\n\nlibrary UnstructuredStorage {\n function getStorageBool(bytes32 position) internal view returns (bool data) {\n assembly { data := sload(position) }\n }\n\n function getStorageAddress(bytes32 position) internal view returns (address data) {\n assembly { data := sload(position) }\n }\n\n function getStorageBytes32(bytes32 position) internal view returns (bytes32 data) {\n assembly { data := sload(position) }\n }\n\n function getStorageUint256(bytes32 position) internal view returns (uint256 data) {\n assembly { data := sload(position) }\n }\n\n function setStorageBool(bytes32 position, bool data) internal {\n assembly { sstore(position, data) }\n }\n\n function setStorageAddress(bytes32 position, address data) internal {\n assembly { sstore(position, data) }\n }\n\n function setStorageBytes32(bytes32 position, bytes32 data) internal {\n assembly { sstore(position, data) }\n }\n\n function setStorageUint256(bytes32 position, uint256 data) internal {\n assembly { sstore(position, data) }\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/evmscript/IEVMScriptExecutor.sol": { | |
"contracts": [ | |
{ | |
"contractName": "IEVMScriptExecutor", | |
"bytecode": "0x", | |
"deployedBytecode": "0x", | |
"sourceMap": "", | |
"deployedSourceMap": "" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/IEVMScriptExecutor.sol", | |
"exportedSymbols": { | |
"IEVMScriptExecutor": [ | |
286 | |
] | |
}, | |
"id": 287, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 268, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:6" | |
}, | |
{ | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "interface", | |
"documentation": null, | |
"fullyImplemented": false, | |
"id": 286, | |
"linearizedBaseContracts": [ | |
286 | |
], | |
"name": "IEVMScriptExecutor", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"body": null, | |
"documentation": null, | |
"id": 280, | |
"implemented": false, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [], | |
"name": "execScript", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 276, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 270, | |
"name": "script", | |
"nodeType": "VariableDeclaration", | |
"scope": 280, | |
"src": "126:12:6", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 269, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "126:5:6", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 272, | |
"name": "input", | |
"nodeType": "VariableDeclaration", | |
"scope": 280, | |
"src": "140:11:6", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 271, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "140:5:6", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 275, | |
"name": "blacklist", | |
"nodeType": "VariableDeclaration", | |
"scope": 280, | |
"src": "153:19:6", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", | |
"typeString": "address[]" | |
}, | |
"typeName": { | |
"baseType": { | |
"id": 273, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "153:7:6", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"id": 274, | |
"length": null, | |
"nodeType": "ArrayTypeName", | |
"src": "153:9:6", | |
"typeDescriptions": { | |
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", | |
"typeString": "address[]" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "125:48:6" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 279, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 278, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 280, | |
"src": "192:5:6", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 277, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "192:5:6", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "191:7:6" | |
}, | |
"scope": 286, | |
"src": "106:93:6", | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "external" | |
}, | |
{ | |
"body": null, | |
"documentation": null, | |
"id": 285, | |
"implemented": false, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "executorType", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 281, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "225:2:6" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 284, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 283, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 285, | |
"src": "251:7:6", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 282, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "251:7:6", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "250:9:6" | |
}, | |
"scope": 286, | |
"src": "204:56:6", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "external" | |
} | |
], | |
"scope": 287, | |
"src": "71:191:6" | |
} | |
], | |
"src": "44:219:6" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/IEVMScriptExecutor.sol", | |
"exportedSymbols": { | |
"IEVMScriptExecutor": [ | |
286 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 268, | |
"name": "PragmaDirective", | |
"src": "44:24:6" | |
}, | |
{ | |
"attributes": { | |
"baseContracts": [ | |
null | |
], | |
"contractDependencies": [ | |
null | |
], | |
"contractKind": "interface", | |
"documentation": null, | |
"fullyImplemented": false, | |
"linearizedBaseContracts": [ | |
286 | |
], | |
"name": "IEVMScriptExecutor", | |
"scope": 287 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"body": null, | |
"constant": false, | |
"documentation": null, | |
"implemented": false, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "execScript", | |
"payable": false, | |
"scope": 286, | |
"stateMutability": "nonpayable", | |
"superFunction": null, | |
"visibility": "external" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "script", | |
"scope": 280, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 269, | |
"name": "ElementaryTypeName", | |
"src": "126:5:6" | |
} | |
], | |
"id": 270, | |
"name": "VariableDeclaration", | |
"src": "126:12:6" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "input", | |
"scope": 280, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 271, | |
"name": "ElementaryTypeName", | |
"src": "140:5:6" | |
} | |
], | |
"id": 272, | |
"name": "VariableDeclaration", | |
"src": "140:11:6" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "blacklist", | |
"scope": 280, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address[]", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"length": null, | |
"type": "address[]" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 273, | |
"name": "ElementaryTypeName", | |
"src": "153:7:6" | |
} | |
], | |
"id": 274, | |
"name": "ArrayTypeName", | |
"src": "153:9:6" | |
} | |
], | |
"id": 275, | |
"name": "VariableDeclaration", | |
"src": "153:19:6" | |
} | |
], | |
"id": 276, | |
"name": "ParameterList", | |
"src": "125:48:6" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 280, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 277, | |
"name": "ElementaryTypeName", | |
"src": "192:5:6" | |
} | |
], | |
"id": 278, | |
"name": "VariableDeclaration", | |
"src": "192:5:6" | |
} | |
], | |
"id": 279, | |
"name": "ParameterList", | |
"src": "191:7:6" | |
} | |
], | |
"id": 280, | |
"name": "FunctionDefinition", | |
"src": "106:93:6" | |
}, | |
{ | |
"attributes": { | |
"body": null, | |
"constant": true, | |
"documentation": null, | |
"implemented": false, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "executorType", | |
"payable": false, | |
"scope": 286, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "external" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"parameters": [ | |
null | |
] | |
}, | |
"children": [], | |
"id": 281, | |
"name": "ParameterList", | |
"src": "225:2:6" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 285, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 282, | |
"name": "ElementaryTypeName", | |
"src": "251:7:6" | |
} | |
], | |
"id": 283, | |
"name": "VariableDeclaration", | |
"src": "251:7:6" | |
} | |
], | |
"id": 284, | |
"name": "ParameterList", | |
"src": "250:9:6" | |
} | |
], | |
"id": 285, | |
"name": "FunctionDefinition", | |
"src": "204:56:6" | |
} | |
], | |
"id": 286, | |
"name": "ContractDefinition", | |
"src": "71:191:6" | |
} | |
], | |
"id": 287, | |
"name": "SourceUnit", | |
"src": "44:219:6" | |
}, | |
"id": 6, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\n\ninterface IEVMScriptExecutor {\n function execScript(bytes script, bytes input, address[] blacklist) external returns (bytes);\n function executorType() external pure returns (bytes32);\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/evmscript/ScriptHelpers.sol": { | |
"contracts": [ | |
{ | |
"contractName": "ScriptHelpers", | |
"bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820db850d7d69340e68992741270e0f1d4ea2170b624bb699ba90f30001f468bd3b0029", | |
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820db850d7d69340e68992741270e0f1d4ea2170b624bb699ba90f30001f468bd3b0029", | |
"sourceMap": "71:1409:7:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", | |
"deployedSourceMap": "71:1409:7:-;;;;;;;;" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/ScriptHelpers.sol", | |
"exportedSymbols": { | |
"ScriptHelpers": [ | |
241 | |
] | |
}, | |
"id": 242, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 151, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:7" | |
}, | |
{ | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "library", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 241, | |
"linearizedBaseContracts": [ | |
241 | |
], | |
"name": "ScriptHelpers", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"body": { | |
"id": 163, | |
"nodeType": "Block", | |
"src": "164:44:7", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 159, | |
"name": "_script", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 153, | |
"src": "190:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"hexValue": "30", | |
"id": 160, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "199:1:7", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_0_by_1", | |
"typeString": "int_const 0" | |
}, | |
"value": "0" | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
}, | |
{ | |
"typeIdentifier": "t_rational_0_by_1", | |
"typeString": "int_const 0" | |
} | |
], | |
"id": 158, | |
"name": "uint32At", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 211, | |
"src": "181:8:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$", | |
"typeString": "function (bytes memory,uint256) pure returns (uint32)" | |
} | |
}, | |
"id": 161, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "181:20:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
} | |
}, | |
"functionReturnParameters": 157, | |
"id": 162, | |
"nodeType": "Return", | |
"src": "174:27:7" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 164, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "getSpecId", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 154, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 153, | |
"name": "_script", | |
"nodeType": "VariableDeclaration", | |
"scope": 164, | |
"src": "118:13:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 152, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "118:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "117:15:7" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 157, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 156, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 164, | |
"src": "156:6:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
}, | |
"typeName": { | |
"id": 155, | |
"name": "uint32", | |
"nodeType": "ElementaryTypeName", | |
"src": "156:6:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "155:8:7" | |
}, | |
"scope": 241, | |
"src": "99:109:7", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 174, | |
"nodeType": "Block", | |
"src": "304:98:7", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"_data": { | |
"declaration": 166, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "357:5:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"_location": { | |
"declaration": 168, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "374:9:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"result": { | |
"declaration": 171, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "337:6:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 173, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n result := mload(add(_data, add(0x20, _location)))\n}", | |
"src": "314:88:7" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 175, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "uint256At", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 169, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 166, | |
"name": "_data", | |
"nodeType": "VariableDeclaration", | |
"scope": 175, | |
"src": "233:11:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 165, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "233:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 168, | |
"name": "_location", | |
"nodeType": "VariableDeclaration", | |
"scope": 175, | |
"src": "246:17:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 167, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "246:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "232:32:7" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 172, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 171, | |
"name": "result", | |
"nodeType": "VariableDeclaration", | |
"scope": 175, | |
"src": "288:14:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 170, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "288:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "287:16:7" | |
}, | |
"scope": 241, | |
"src": "214:188:7", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 192, | |
"nodeType": "Block", | |
"src": "498:235:7", | |
"statements": [ | |
{ | |
"assignments": [ | |
185 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 185, | |
"name": "word", | |
"nodeType": "VariableDeclaration", | |
"scope": 193, | |
"src": "508:12:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 184, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "508:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 190, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 187, | |
"name": "_data", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 177, | |
"src": "533:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 188, | |
"name": "_location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 179, | |
"src": "540:9:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
}, | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"id": 186, | |
"name": "uint256At", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 175, | |
"src": "523:9:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", | |
"typeString": "function (bytes memory,uint256) pure returns (uint256)" | |
} | |
}, | |
"id": 189, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "523:27:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "508:42:7" | |
}, | |
{ | |
"externalReferences": [ | |
{ | |
"result": { | |
"declaration": 182, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "584:6:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"word": { | |
"declaration": 185, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "602:4:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 191, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n result := div(and(word, 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000), 0x1000000000000000000000000)\n}", | |
"src": "561:172:7" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 193, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "addressAt", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 180, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 177, | |
"name": "_data", | |
"nodeType": "VariableDeclaration", | |
"scope": 193, | |
"src": "427:11:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 176, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "427:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 179, | |
"name": "_location", | |
"nodeType": "VariableDeclaration", | |
"scope": 193, | |
"src": "440:17:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 178, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "440:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "426:32:7" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 183, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 182, | |
"name": "result", | |
"nodeType": "VariableDeclaration", | |
"scope": 193, | |
"src": "482:14:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 181, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "482:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "481:16:7" | |
}, | |
"scope": 241, | |
"src": "408:325:7", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 210, | |
"nodeType": "Block", | |
"src": "827:267:7", | |
"statements": [ | |
{ | |
"assignments": [ | |
203 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 203, | |
"name": "word", | |
"nodeType": "VariableDeclaration", | |
"scope": 211, | |
"src": "837:12:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 202, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "837:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 208, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 205, | |
"name": "_data", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 195, | |
"src": "862:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 206, | |
"name": "_location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 197, | |
"src": "869:9:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
}, | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"id": 204, | |
"name": "uint256At", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 175, | |
"src": "852:9:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$", | |
"typeString": "function (bytes memory,uint256) pure returns (uint256)" | |
} | |
}, | |
"id": 207, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "852:27:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "837:42:7" | |
}, | |
{ | |
"externalReferences": [ | |
{ | |
"word": { | |
"declaration": 203, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "931:4:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"result": { | |
"declaration": 200, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "913:6:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 209, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n result := div(and(word, 0xffffffff00000000000000000000000000000000000000000000000000000000), 0x100000000000000000000000000000000000000000000000000000000)\n}", | |
"src": "890:204:7" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 211, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "uint32At", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 198, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 195, | |
"name": "_data", | |
"nodeType": "VariableDeclaration", | |
"scope": 211, | |
"src": "757:11:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 194, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "757:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 197, | |
"name": "_location", | |
"nodeType": "VariableDeclaration", | |
"scope": 211, | |
"src": "770:17:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 196, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "770:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "756:32:7" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 201, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 200, | |
"name": "result", | |
"nodeType": "VariableDeclaration", | |
"scope": 211, | |
"src": "812:13:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
}, | |
"typeName": { | |
"id": 199, | |
"name": "uint32", | |
"nodeType": "ElementaryTypeName", | |
"src": "812:6:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "811:15:7" | |
}, | |
"scope": 241, | |
"src": "739:355:7", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 221, | |
"nodeType": "Block", | |
"src": "1191:91:7", | |
"statements": [ | |
{ | |
"externalReferences": [ | |
{ | |
"_data": { | |
"declaration": 213, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1238:5:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"_location": { | |
"declaration": 215, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1255:9:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"result": { | |
"declaration": 218, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1224:6:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 220, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n result := add(_data, add(0x20, _location))\n}", | |
"src": "1201:81:7" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 222, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "locationOf", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 216, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 213, | |
"name": "_data", | |
"nodeType": "VariableDeclaration", | |
"scope": 222, | |
"src": "1120:11:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 212, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1120:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 215, | |
"name": "_location", | |
"nodeType": "VariableDeclaration", | |
"scope": 222, | |
"src": "1133:17:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 214, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1133:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1119:32:7" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 219, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 218, | |
"name": "result", | |
"nodeType": "VariableDeclaration", | |
"scope": 222, | |
"src": "1175:14:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 217, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1175:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1174:16:7" | |
}, | |
"scope": 241, | |
"src": "1100:182:7", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 239, | |
"nodeType": "Block", | |
"src": "1348:130:7", | |
"statements": [ | |
{ | |
"assignments": [ | |
230 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 230, | |
"name": "payload", | |
"nodeType": "VariableDeclaration", | |
"scope": 240, | |
"src": "1358:20:7", | |
"stateVariable": false, | |
"storageLocation": "memory", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 229, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1358:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 235, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"hexValue": "34", | |
"id": 233, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "1391:1:7", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_4_by_1", | |
"typeString": "int_const 4" | |
}, | |
"value": "4" | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_rational_4_by_1", | |
"typeString": "int_const 4" | |
} | |
], | |
"id": 232, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "NewExpression", | |
"src": "1381:9:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_$", | |
"typeString": "function (uint256) pure returns (bytes memory)" | |
}, | |
"typeName": { | |
"id": 231, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1385:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
} | |
}, | |
"id": 234, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1381:12:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory", | |
"typeString": "bytes memory" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1358:35:7" | |
}, | |
{ | |
"externalReferences": [ | |
{ | |
"_sig": { | |
"declaration": 224, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1441:4:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"payload": { | |
"declaration": 230, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1425:7:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 236, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n mstore(add(payload, 0x20), _sig)\n}", | |
"src": "1403:60:7" | |
}, | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"id": 237, | |
"name": "payload", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 230, | |
"src": "1464:7:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
} | |
}, | |
"functionReturnParameters": 228, | |
"id": 238, | |
"nodeType": "Return", | |
"src": "1457:14:7" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 240, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "toBytes", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 225, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 224, | |
"name": "_sig", | |
"nodeType": "VariableDeclaration", | |
"scope": 240, | |
"src": "1305:11:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes4", | |
"typeString": "bytes4" | |
}, | |
"typeName": { | |
"id": 223, | |
"name": "bytes4", | |
"nodeType": "ElementaryTypeName", | |
"src": "1305:6:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes4", | |
"typeString": "bytes4" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1304:13:7" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 228, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 227, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 240, | |
"src": "1341:5:7", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 226, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1341:5:7", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1340:7:7" | |
}, | |
"scope": 241, | |
"src": "1288:190:7", | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
} | |
], | |
"scope": 242, | |
"src": "71:1409:7" | |
} | |
], | |
"src": "44:1437:7" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/ScriptHelpers.sol", | |
"exportedSymbols": { | |
"ScriptHelpers": [ | |
241 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 151, | |
"name": "PragmaDirective", | |
"src": "44:24:7" | |
}, | |
{ | |
"attributes": { | |
"baseContracts": [ | |
null | |
], | |
"contractDependencies": [ | |
null | |
], | |
"contractKind": "library", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
241 | |
], | |
"name": "ScriptHelpers", | |
"scope": 242 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "getSpecId", | |
"payable": false, | |
"scope": 241, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_script", | |
"scope": 164, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 152, | |
"name": "ElementaryTypeName", | |
"src": "118:5:7" | |
} | |
], | |
"id": 153, | |
"name": "VariableDeclaration", | |
"src": "118:13:7" | |
} | |
], | |
"id": 154, | |
"name": "ParameterList", | |
"src": "117:15:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 164, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint32", | |
"type": "uint32" | |
}, | |
"id": 155, | |
"name": "ElementaryTypeName", | |
"src": "156:6:7" | |
} | |
], | |
"id": 156, | |
"name": "VariableDeclaration", | |
"src": "156:6:7" | |
} | |
], | |
"id": 157, | |
"name": "ParameterList", | |
"src": "155:8:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"functionReturnParameters": 157 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint32", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
}, | |
{ | |
"typeIdentifier": "t_rational_0_by_1", | |
"typeString": "int_const 0" | |
} | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 211, | |
"type": "function (bytes memory,uint256) pure returns (uint32)", | |
"value": "uint32At" | |
}, | |
"id": 158, | |
"name": "Identifier", | |
"src": "181:8:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 153, | |
"type": "bytes memory", | |
"value": "_script" | |
}, | |
"id": 159, | |
"name": "Identifier", | |
"src": "190:7:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "30", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 0", | |
"value": "0" | |
}, | |
"id": 160, | |
"name": "Literal", | |
"src": "199:1:7" | |
} | |
], | |
"id": 161, | |
"name": "FunctionCall", | |
"src": "181:20:7" | |
} | |
], | |
"id": 162, | |
"name": "Return", | |
"src": "174:27:7" | |
} | |
], | |
"id": 163, | |
"name": "Block", | |
"src": "164:44:7" | |
} | |
], | |
"id": 164, | |
"name": "FunctionDefinition", | |
"src": "99:109:7" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "uint256At", | |
"payable": false, | |
"scope": 241, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_data", | |
"scope": 175, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 165, | |
"name": "ElementaryTypeName", | |
"src": "233:5:7" | |
} | |
], | |
"id": 166, | |
"name": "VariableDeclaration", | |
"src": "233:11:7" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_location", | |
"scope": 175, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 167, | |
"name": "ElementaryTypeName", | |
"src": "246:7:7" | |
} | |
], | |
"id": 168, | |
"name": "VariableDeclaration", | |
"src": "246:17:7" | |
} | |
], | |
"id": 169, | |
"name": "ParameterList", | |
"src": "232:32:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "result", | |
"scope": 175, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 170, | |
"name": "ElementaryTypeName", | |
"src": "288:7:7" | |
} | |
], | |
"id": 171, | |
"name": "VariableDeclaration", | |
"src": "288:14:7" | |
} | |
], | |
"id": 172, | |
"name": "ParameterList", | |
"src": "287:16:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"_data": { | |
"declaration": 166, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "357:5:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"_location": { | |
"declaration": 168, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "374:9:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"result": { | |
"declaration": 171, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "337:6:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n result := mload(add(_data, add(0x20, _location)))\n}" | |
}, | |
"children": [], | |
"id": 173, | |
"name": "InlineAssembly", | |
"src": "314:88:7" | |
} | |
], | |
"id": 174, | |
"name": "Block", | |
"src": "304:98:7" | |
} | |
], | |
"id": 175, | |
"name": "FunctionDefinition", | |
"src": "214:188:7" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "addressAt", | |
"payable": false, | |
"scope": 241, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_data", | |
"scope": 193, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 176, | |
"name": "ElementaryTypeName", | |
"src": "427:5:7" | |
} | |
], | |
"id": 177, | |
"name": "VariableDeclaration", | |
"src": "427:11:7" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_location", | |
"scope": 193, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 178, | |
"name": "ElementaryTypeName", | |
"src": "440:7:7" | |
} | |
], | |
"id": 179, | |
"name": "VariableDeclaration", | |
"src": "440:17:7" | |
} | |
], | |
"id": 180, | |
"name": "ParameterList", | |
"src": "426:32:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "result", | |
"scope": 193, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 181, | |
"name": "ElementaryTypeName", | |
"src": "482:7:7" | |
} | |
], | |
"id": 182, | |
"name": "VariableDeclaration", | |
"src": "482:14:7" | |
} | |
], | |
"id": 183, | |
"name": "ParameterList", | |
"src": "481:16:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"assignments": [ | |
185 | |
] | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "word", | |
"scope": 193, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 184, | |
"name": "ElementaryTypeName", | |
"src": "508:7:7" | |
} | |
], | |
"id": 185, | |
"name": "VariableDeclaration", | |
"src": "508:12:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
}, | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 175, | |
"type": "function (bytes memory,uint256) pure returns (uint256)", | |
"value": "uint256At" | |
}, | |
"id": 186, | |
"name": "Identifier", | |
"src": "523:9:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 177, | |
"type": "bytes memory", | |
"value": "_data" | |
}, | |
"id": 187, | |
"name": "Identifier", | |
"src": "533:5:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 179, | |
"type": "uint256", | |
"value": "_location" | |
}, | |
"id": 188, | |
"name": "Identifier", | |
"src": "540:9:7" | |
} | |
], | |
"id": 189, | |
"name": "FunctionCall", | |
"src": "523:27:7" | |
} | |
], | |
"id": 190, | |
"name": "VariableDeclarationStatement", | |
"src": "508:42:7" | |
}, | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"result": { | |
"declaration": 182, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "584:6:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"word": { | |
"declaration": 185, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "602:4:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n result := div(and(word, 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000), 0x1000000000000000000000000)\n}" | |
}, | |
"children": [], | |
"id": 191, | |
"name": "InlineAssembly", | |
"src": "561:172:7" | |
} | |
], | |
"id": 192, | |
"name": "Block", | |
"src": "498:235:7" | |
} | |
], | |
"id": 193, | |
"name": "FunctionDefinition", | |
"src": "408:325:7" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "uint32At", | |
"payable": false, | |
"scope": 241, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_data", | |
"scope": 211, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 194, | |
"name": "ElementaryTypeName", | |
"src": "757:5:7" | |
} | |
], | |
"id": 195, | |
"name": "VariableDeclaration", | |
"src": "757:11:7" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_location", | |
"scope": 211, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 196, | |
"name": "ElementaryTypeName", | |
"src": "770:7:7" | |
} | |
], | |
"id": 197, | |
"name": "VariableDeclaration", | |
"src": "770:17:7" | |
} | |
], | |
"id": 198, | |
"name": "ParameterList", | |
"src": "756:32:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "result", | |
"scope": 211, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint32", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint32", | |
"type": "uint32" | |
}, | |
"id": 199, | |
"name": "ElementaryTypeName", | |
"src": "812:6:7" | |
} | |
], | |
"id": 200, | |
"name": "VariableDeclaration", | |
"src": "812:13:7" | |
} | |
], | |
"id": 201, | |
"name": "ParameterList", | |
"src": "811:15:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"assignments": [ | |
203 | |
] | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "word", | |
"scope": 211, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 202, | |
"name": "ElementaryTypeName", | |
"src": "837:7:7" | |
} | |
], | |
"id": 203, | |
"name": "VariableDeclaration", | |
"src": "837:12:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "uint256", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes memory" | |
}, | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 175, | |
"type": "function (bytes memory,uint256) pure returns (uint256)", | |
"value": "uint256At" | |
}, | |
"id": 204, | |
"name": "Identifier", | |
"src": "852:9:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 195, | |
"type": "bytes memory", | |
"value": "_data" | |
}, | |
"id": 205, | |
"name": "Identifier", | |
"src": "862:5:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 197, | |
"type": "uint256", | |
"value": "_location" | |
}, | |
"id": 206, | |
"name": "Identifier", | |
"src": "869:9:7" | |
} | |
], | |
"id": 207, | |
"name": "FunctionCall", | |
"src": "852:27:7" | |
} | |
], | |
"id": 208, | |
"name": "VariableDeclarationStatement", | |
"src": "837:42:7" | |
}, | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"word": { | |
"declaration": 203, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "931:4:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"result": { | |
"declaration": 200, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "913:6:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n result := div(and(word, 0xffffffff00000000000000000000000000000000000000000000000000000000), 0x100000000000000000000000000000000000000000000000000000000)\n}" | |
}, | |
"children": [], | |
"id": 209, | |
"name": "InlineAssembly", | |
"src": "890:204:7" | |
} | |
], | |
"id": 210, | |
"name": "Block", | |
"src": "827:267:7" | |
} | |
], | |
"id": 211, | |
"name": "FunctionDefinition", | |
"src": "739:355:7" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "locationOf", | |
"payable": false, | |
"scope": 241, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_data", | |
"scope": 222, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 212, | |
"name": "ElementaryTypeName", | |
"src": "1120:5:7" | |
} | |
], | |
"id": 213, | |
"name": "VariableDeclaration", | |
"src": "1120:11:7" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_location", | |
"scope": 222, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 214, | |
"name": "ElementaryTypeName", | |
"src": "1133:7:7" | |
} | |
], | |
"id": 215, | |
"name": "VariableDeclaration", | |
"src": "1133:17:7" | |
} | |
], | |
"id": 216, | |
"name": "ParameterList", | |
"src": "1119:32:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "result", | |
"scope": 222, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "uint256", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 217, | |
"name": "ElementaryTypeName", | |
"src": "1175:7:7" | |
} | |
], | |
"id": 218, | |
"name": "VariableDeclaration", | |
"src": "1175:14:7" | |
} | |
], | |
"id": 219, | |
"name": "ParameterList", | |
"src": "1174:16:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"_data": { | |
"declaration": 213, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1238:5:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"_location": { | |
"declaration": 215, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1255:9:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"result": { | |
"declaration": 218, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1224:6:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n result := add(_data, add(0x20, _location))\n}" | |
}, | |
"children": [], | |
"id": 220, | |
"name": "InlineAssembly", | |
"src": "1201:81:7" | |
} | |
], | |
"id": 221, | |
"name": "Block", | |
"src": "1191:91:7" | |
} | |
], | |
"id": 222, | |
"name": "FunctionDefinition", | |
"src": "1100:182:7" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"documentation": null, | |
"implemented": true, | |
"isConstructor": false, | |
"modifiers": [ | |
null | |
], | |
"name": "toBytes", | |
"payable": false, | |
"scope": 241, | |
"stateMutability": "pure", | |
"superFunction": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_sig", | |
"scope": 240, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes4", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes4", | |
"type": "bytes4" | |
}, | |
"id": 223, | |
"name": "ElementaryTypeName", | |
"src": "1305:6:7" | |
} | |
], | |
"id": 224, | |
"name": "VariableDeclaration", | |
"src": "1305:11:7" | |
} | |
], | |
"id": 225, | |
"name": "ParameterList", | |
"src": "1304:13:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 240, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 226, | |
"name": "ElementaryTypeName", | |
"src": "1341:5:7" | |
} | |
], | |
"id": 227, | |
"name": "VariableDeclaration", | |
"src": "1341:5:7" | |
} | |
], | |
"id": 228, | |
"name": "ParameterList", | |
"src": "1340:7:7" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"assignments": [ | |
230 | |
] | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "payload", | |
"scope": 240, | |
"stateVariable": false, | |
"storageLocation": "memory", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 229, | |
"name": "ElementaryTypeName", | |
"src": "1358:5:7" | |
} | |
], | |
"id": 230, | |
"name": "VariableDeclaration", | |
"src": "1358:20:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"isStructConstructorCall": false, | |
"lValueRequested": false, | |
"names": [ | |
null | |
], | |
"type": "bytes memory", | |
"type_conversion": false | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_rational_4_by_1", | |
"typeString": "int_const 4" | |
} | |
], | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"type": "function (uint256) pure returns (bytes memory)" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 231, | |
"name": "ElementaryTypeName", | |
"src": "1385:5:7" | |
} | |
], | |
"id": 232, | |
"name": "NewExpression", | |
"src": "1381:9:7" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "34", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 4", | |
"value": "4" | |
}, | |
"id": 233, | |
"name": "Literal", | |
"src": "1391:1:7" | |
} | |
], | |
"id": 234, | |
"name": "FunctionCall", | |
"src": "1381:12:7" | |
} | |
], | |
"id": 235, | |
"name": "VariableDeclarationStatement", | |
"src": "1358:35:7" | |
}, | |
{ | |
"attributes": { | |
"externalReferences": [ | |
{ | |
"_sig": { | |
"declaration": 224, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1441:4:7", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"payload": { | |
"declaration": 230, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "1425:7:7", | |
"valueSize": 1 | |
} | |
} | |
], | |
"operations": "{\n mstore(add(payload, 0x20), _sig)\n}" | |
}, | |
"children": [], | |
"id": 236, | |
"name": "InlineAssembly", | |
"src": "1403:60:7" | |
}, | |
{ | |
"attributes": { | |
"functionReturnParameters": 228 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"overloadedDeclarations": [ | |
null | |
], | |
"referencedDeclaration": 230, | |
"type": "bytes memory", | |
"value": "payload" | |
}, | |
"id": 237, | |
"name": "Identifier", | |
"src": "1464:7:7" | |
} | |
], | |
"id": 238, | |
"name": "Return", | |
"src": "1457:14:7" | |
} | |
], | |
"id": 239, | |
"name": "Block", | |
"src": "1348:130:7" | |
} | |
], | |
"id": 240, | |
"name": "FunctionDefinition", | |
"src": "1288:190:7" | |
} | |
], | |
"id": 241, | |
"name": "ContractDefinition", | |
"src": "71:1409:7" | |
} | |
], | |
"id": 242, | |
"name": "SourceUnit", | |
"src": "44:1437:7" | |
}, | |
"id": 7, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\n\nlibrary ScriptHelpers {\n function getSpecId(bytes _script) internal pure returns (uint32) {\n return uint32At(_script, 0);\n }\n\n function uint256At(bytes _data, uint256 _location) internal pure returns (uint256 result) {\n assembly {\n result := mload(add(_data, add(0x20, _location)))\n }\n }\n\n function addressAt(bytes _data, uint256 _location) internal pure returns (address result) {\n uint256 word = uint256At(_data, _location);\n\n assembly {\n result := div(and(word, 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000),\n 0x1000000000000000000000000)\n }\n }\n\n function uint32At(bytes _data, uint256 _location) internal pure returns (uint32 result) {\n uint256 word = uint256At(_data, _location);\n\n assembly {\n result := div(and(word, 0xffffffff00000000000000000000000000000000000000000000000000000000),\n 0x100000000000000000000000000000000000000000000000000000000)\n }\n }\n\n function locationOf(bytes _data, uint256 _location) internal pure returns (uint256 result) {\n assembly {\n result := add(_data, add(0x20, _location))\n }\n }\n\n function toBytes(bytes4 _sig) internal pure returns (bytes) {\n bytes memory payload = new bytes(4);\n assembly { mstore(add(payload, 0x20), _sig) }\n return payload;\n }\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/evmscript/executors/BaseEVMScriptExecutor.sol": { | |
"contracts": [ | |
{ | |
"contractName": "BaseEVMScriptExecutor", | |
"bytecode": "0x", | |
"deployedBytecode": "0x", | |
"sourceMap": "", | |
"deployedSourceMap": "" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/executors/BaseEVMScriptExecutor.sol", | |
"exportedSymbols": { | |
"BaseEVMScriptExecutor": [ | |
253 | |
] | |
}, | |
"id": 254, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 243, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "44:24:8" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Autopetrified.sol", | |
"file": "../../common/Autopetrified.sol", | |
"id": 244, | |
"nodeType": "ImportDirective", | |
"scope": 254, | |
"sourceUnit": 267, | |
"src": "70:40:8", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/IEVMScriptExecutor.sol", | |
"file": "../IEVMScriptExecutor.sol", | |
"id": 245, | |
"nodeType": "ImportDirective", | |
"scope": 254, | |
"sourceUnit": 287, | |
"src": "111:35:8", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"baseContracts": [ | |
{ | |
"arguments": null, | |
"baseName": { | |
"contractScope": null, | |
"id": 246, | |
"name": "IEVMScriptExecutor", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 286, | |
"src": "183:18:8", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_IEVMScriptExecutor_$286", | |
"typeString": "contract IEVMScriptExecutor" | |
} | |
}, | |
"id": 247, | |
"nodeType": "InheritanceSpecifier", | |
"src": "183:18:8" | |
}, | |
{ | |
"arguments": null, | |
"baseName": { | |
"contractScope": null, | |
"id": 248, | |
"name": "Autopetrified", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 266, | |
"src": "203:13:8", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_Autopetrified_$266", | |
"typeString": "contract Autopetrified" | |
} | |
}, | |
"id": 249, | |
"nodeType": "InheritanceSpecifier", | |
"src": "203:13:8" | |
} | |
], | |
"contractDependencies": [ | |
266, | |
286, | |
319, | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": false, | |
"id": 253, | |
"linearizedBaseContracts": [ | |
253, | |
266, | |
319, | |
417, | |
464, | |
286 | |
], | |
"name": "BaseEVMScriptExecutor", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"constant": true, | |
"id": 252, | |
"name": "SCRIPT_START_LOCATION", | |
"nodeType": "VariableDeclaration", | |
"scope": 253, | |
"src": "223:51:8", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 250, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "223:7:8", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "34", | |
"id": 251, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "273:1:8", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_4_by_1", | |
"typeString": "int_const 4" | |
}, | |
"value": "4" | |
}, | |
"visibility": "internal" | |
} | |
], | |
"scope": 254, | |
"src": "149:128:8" | |
} | |
], | |
"src": "44:234:8" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/executors/BaseEVMScriptExecutor.sol", | |
"exportedSymbols": { | |
"BaseEVMScriptExecutor": [ | |
253 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"^", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 243, | |
"name": "PragmaDirective", | |
"src": "44:24:8" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 267, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/common/Autopetrified.sol", | |
"file": "../../common/Autopetrified.sol", | |
"scope": 254, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 244, | |
"name": "ImportDirective", | |
"src": "70:40:8" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 287, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/IEVMScriptExecutor.sol", | |
"file": "../IEVMScriptExecutor.sol", | |
"scope": 254, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 245, | |
"name": "ImportDirective", | |
"src": "111:35:8" | |
}, | |
{ | |
"attributes": { | |
"contractDependencies": [ | |
266, | |
286, | |
319, | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": false, | |
"linearizedBaseContracts": [ | |
253, | |
266, | |
319, | |
417, | |
464, | |
286 | |
], | |
"name": "BaseEVMScriptExecutor", | |
"scope": 254 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "IEVMScriptExecutor", | |
"referencedDeclaration": 286, | |
"type": "contract IEVMScriptExecutor" | |
}, | |
"id": 246, | |
"name": "UserDefinedTypeName", | |
"src": "183:18:8" | |
} | |
], | |
"id": 247, | |
"name": "InheritanceSpecifier", | |
"src": "183:18:8" | |
}, | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "Autopetrified", | |
"referencedDeclaration": 266, | |
"type": "contract Autopetrified" | |
}, | |
"id": 248, | |
"name": "UserDefinedTypeName", | |
"src": "203:13:8" | |
} | |
], | |
"id": 249, | |
"name": "InheritanceSpecifier", | |
"src": "203:13:8" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "SCRIPT_START_LOCATION", | |
"scope": 253, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "uint256", | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "uint256", | |
"type": "uint256" | |
}, | |
"id": 250, | |
"name": "ElementaryTypeName", | |
"src": "223:7:8" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "34", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 4", | |
"value": "4" | |
}, | |
"id": 251, | |
"name": "Literal", | |
"src": "273:1:8" | |
} | |
], | |
"id": 252, | |
"name": "VariableDeclaration", | |
"src": "223:51:8" | |
} | |
], | |
"id": 253, | |
"name": "ContractDefinition", | |
"src": "149:128:8" | |
} | |
], | |
"id": 254, | |
"name": "SourceUnit", | |
"src": "44:234:8" | |
}, | |
"id": 8, | |
"source": "/*\n * SPDX-License-Identitifer: MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"../../common/Autopetrified.sol\";\nimport \"../IEVMScriptExecutor.sol\";\n\n\ncontract BaseEVMScriptExecutor is IEVMScriptExecutor, Autopetrified {\n uint256 internal constant SCRIPT_START_LOCATION = 4;\n}\n" | |
}, | |
"/src/external-vcs/github/aragonOS/contracts/evmscript/executors/CallsScript.sol": { | |
"contracts": [ | |
{ | |
"contractName": "CallsScript", | |
"bytecode": "0x608060405261001b610020640100000000026401000000009004565b6102f2565b6000610039610153640100000000026401000000009004565b146040805190810160405280601881526020017f494e49545f414c52454144595f494e495449414c495a45440000000000000000815250901515610118576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156100dd5780820151818401526020810190506100c2565b50505050905090810190601f16801561010a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506101517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61019d640100000000026401000000009004565b565b60006101987febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e600102600019166102e06401000000000261092f176401000000009004565b905090565b60006101b6610153640100000000026401000000009004565b146040805190810160405280601881526020017f494e49545f414c52454144595f494e495449414c495a45440000000000000000815250901515610295576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561025a57808201518184015260208101905061023f565b50505050905090810190601f1680156102875780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506102dd817febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e600102600019166102eb6401000000000261094b179091906401000000009004565b50565b600081549050919050565b8082555050565b61097e806103016000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac014610072578063279cea35146100a15780638333d9b2146101855780638b3dd749146101b8578063de4796ed146101e3575b600080fd5b34801561007e57600080fd5b50610087610212565b604051808215151515815260200191505060405180910390f35b3480156100ad57600080fd5b5061010a60048036038101908080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939050505061023d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561014a57808201518184015260208101905061012f565b50505050905090810190601f1680156101775780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019157600080fd5b5061019a6107e0565b60405180826000191660001916815260200191505060405180910390f35b3480156101c457600080fd5b506101cd61080b565b6040518082815260200191505060405180910390f35b3480156101ef57600080fd5b506101f8610842565b604051808215151515815260200191505060405180910390f35b60008061021d61080b565b905060008114158015610237575080610234610873565b10155b91505090565b60606000806000806000806000610252610212565b6040805190810160405280601481526020017f494e49545f4e4f545f494e495449414c495a4544000000000000000000000000815250901515610330576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156102f55780820151818401526020810190506102da565b50505050905090810190601f1680156103225780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600496505b8d8d90508710156107cf57610386878f8f8080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061087b90919063ffffffff16565b9550600094505b898990508510156104de5789898681811015156103a657fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156040805190810160405280601981526020017f45564d43414c4c535f424c41434b4c49535445445f43414c4c000000000000008152509015156104d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561049557808201518184015260208101905061047a565b50505050905090810190601f1680156104c25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50848060010195505061038d565b8573ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a4610597601488018f8f8080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506108c590919063ffffffff16565b63ffffffff1693506004601488010192506105ed838f8f8080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061091f90919063ffffffff16565b915083830196508d8d90508711156040805190810160405280601781526020017f45564d43414c4c535f494e56414c49445f4c454e4754480000000000000000008152509015156106d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561069e578082015181840152602081019050610683565b50505050905090810190601f1680156106cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600080858460008a6113885a03f19050806040805190810160405280601681526020017f45564d43414c4c535f43414c4c5f5245564552544544000000000000000000008152509015156107c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561078e578082015181840152602081019050610773565b50505050905090810190601f1680156107bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610336565b505050505050509695505050505050565b60007f2dc858a00f3e417be1394b87c07158e989ec681ce8cc68a9093680ac1a870302600102905090565b600061083d7febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e6001026000191661092f565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61086d61080b565b14905090565b600043905090565b600080610888848461093a565b90506c010000000000000000000000007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082160491505092915050565b6000806108d2848461093a565b90507c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000082160491505092915050565b6000816020018301905092915050565b600081549050919050565b600081602001830151905092915050565b80825550505600a165627a7a72305820c7aed686579008fd510411155a95897c39d90d1fa77308c4f43e3bf24959c3d70029", | |
"deployedBytecode": "0x60806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630803fac014610072578063279cea35146100a15780638333d9b2146101855780638b3dd749146101b8578063de4796ed146101e3575b600080fd5b34801561007e57600080fd5b50610087610212565b604051808215151515815260200191505060405180910390f35b3480156100ad57600080fd5b5061010a60048036038101908080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939080359060200190820180359060200191909192939192939050505061023d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561014a57808201518184015260208101905061012f565b50505050905090810190601f1680156101775780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019157600080fd5b5061019a6107e0565b60405180826000191660001916815260200191505060405180910390f35b3480156101c457600080fd5b506101cd61080b565b6040518082815260200191505060405180910390f35b3480156101ef57600080fd5b506101f8610842565b604051808215151515815260200191505060405180910390f35b60008061021d61080b565b905060008114158015610237575080610234610873565b10155b91505090565b60606000806000806000806000610252610212565b6040805190810160405280601481526020017f494e49545f4e4f545f494e495449414c495a4544000000000000000000000000815250901515610330576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156102f55780820151818401526020810190506102da565b50505050905090810190601f1680156103225780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600496505b8d8d90508710156107cf57610386878f8f8080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061087b90919063ffffffff16565b9550600094505b898990508510156104de5789898681811015156103a657fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156040805190810160405280601981526020017f45564d43414c4c535f424c41434b4c49535445445f43414c4c000000000000008152509015156104d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561049557808201518184015260208101905061047a565b50505050905090810190601f1680156104c25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50848060010195505061038d565b8573ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f9dcff9d94fbfdb4622d11edb383005f95e78efb446c72d92f8e615c6025c470360405160405180910390a4610597601488018f8f8080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506108c590919063ffffffff16565b63ffffffff1693506004601488010192506105ed838f8f8080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505061091f90919063ffffffff16565b915083830196508d8d90508711156040805190810160405280601781526020017f45564d43414c4c535f494e56414c49445f4c454e4754480000000000000000008152509015156106d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561069e578082015181840152602081019050610683565b50505050905090810190601f1680156106cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600080858460008a6113885a03f19050806040805190810160405280601681526020017f45564d43414c4c535f43414c4c5f5245564552544544000000000000000000008152509015156107c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561078e578082015181840152602081019050610773565b50505050905090810190601f1680156107bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610336565b505050505050509695505050505050565b60007f2dc858a00f3e417be1394b87c07158e989ec681ce8cc68a9093680ac1a870302600102905090565b600061083d7febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e6001026000191661092f565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61086d61080b565b14905090565b600043905090565b600080610888848461093a565b90506c010000000000000000000000007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082160491505092915050565b6000806108d2848461093a565b90507c01000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000082160491505092915050565b6000816020018301905092915050565b600081549050919050565b600081602001830151905092915050565b80825550505600a165627a7a72305820c7aed686579008fd510411155a95897c39d90d1fa77308c4f43e3bf24959c3d70029", | |
"sourceMap": "153:2472:9:-;;;344:9:0;:7;;;:9;;;:::i;:::-;153:2472:9;;590:84:2;651:1:1;623:24;:22;;;:24;;;:::i;:::-;:29;654:25;;;;;;;;;;;;;;;;;;615:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;615:65:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;637:30:2;277:2;637:13;;;:30;;;:::i;:::-;590:84::o;889:137:1:-;944:7;970:49;353:66;970:29;;:47;;;;;;;;:49;;;:::i;:::-;963:56;;889:137;:::o;1759:141::-;651:1;623:24;:22;;;:24;;;:::i;:::-;:29;654:25;;;;;;;;;;;;;;;;;;615:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;615:65:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1832:61;1880:12;353:66;1832:29;;:47;;;;;;;;;:61;;;;;:::i;:::-;1759:141;:::o;519:134:5:-;587:12;636:8;630:15;622:23;;620:27;;;:::o;1028:119::-;1134:4;1124:8;1117:22;1115:26;;:::o;153:2472:9:-;;;;;;;", | |
"deployedSourceMap": "153:2472:9:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1136:208:1;;;;;;;;;;;;;;;;;;;;;;;;;;;1174:1350:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1174:1350:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1174:1350:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2530:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2530:93:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;889:137:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;889:137:1;;;;;;;;;;;;;;;;;;;;;;;287:117:2;;8:9:-1;5:2;;;30:1;27;20:12;5:2;287:117:2;;;;;;;;;;;;;;;;;;;;;;;;;;;1136:208:1;1183:4;1199:27;1229:24;:22;:24::i;:::-;1199:54;;1293:1;1270:19;:24;;:67;;;;;1318:19;1298:16;:14;:16::i;:::-;:39;;1270:67;1263:74;;1136:208;;:::o;1174:1350:9:-;1270:5;1287:16;1414:23;1545:6;1914:22;1995:19;2053:21;2301:12;745:16:1;:14;:16::i;:::-;763:21;;;;;;;;;;;;;;;;;;737:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;737:48:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;273:1:8;1287:40:9;;1366:1152;1384:7;;:14;;1373:8;:25;1366:1152;;;1440:27;1458:8;1440:7;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;;:::i;:::-;1414:53;;1554:1;1545:10;;1540:143;1561:10;;:17;;1557:1;:21;1540:143;;;1630:10;;1641:1;1630:13;;;;;;;;;;;;;;;;;1611:32;;:15;:32;;;;1645:22;;;;;;;;;;;;;;;;;;1603:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1603:65:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1580:3;;;;;;;1540:143;;;1883:15;1842:57;;1876:4;1842:57;;1856:10;1842:57;;;;;;;;;;;;1947:33;1975:4;1964:8;:15;1947:7;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:33;;;;:::i;:::-;1939:42;;1914:67;;2035:4;2028;2017:8;:15;:22;1995:44;;2077:31;2096:11;2077:7;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:31;;;;:::i;:::-;2053:55;;2201:14;2187:11;:28;2176:39;;2249:7;;:14;;2237:8;:26;;2265:20;;;;;;;;;;;;;;;;;;2229:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2229:57:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2440:1;2437;2421:14;2406:13;2403:1;2386:15;2379:4;2374:3;2370:14;2365:77;2354:88;;2478:7;2487:19;;;;;;;;;;;;;;;;;;2470:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2470:37:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1366:1152;;;1174:1350;;;;;;;;;;;;;;;:::o;2530:93::-;2577:7;402:66;2603:13;;2596:20;;2530:93;:::o;889:137:1:-;944:7;970:49;353:66;970:29;;:47;;;;:49::i;:::-;963:56;;889:137;:::o;287:117:2:-;331:4;277:2;354:24;:22;:24::i;:::-;:43;347:50;;287:117;:::o;347:94:3:-;396:7;422:12;415:19;;347:94;:::o;408:325:7:-;482:14;508:12;523:27;533:5;540:9;523;:27::i;:::-;508:42;;689:27;608:66;602:4;598:77;594:123;584:133;;570:157;;;;;:::o;739:355::-;812:13;837:12;852:27;862:5;869:9;852;:27::i;:::-;837:42;;1018:59;937:66;931:4;927:77;923:155;913:165;;899:189;;;;;:::o;1100:182::-;1175:14;1255:9;1249:4;1245:20;1238:5;1234:32;1224:42;;1210:66;;;;:::o;519:134:5:-;587:12;636:8;630:15;622:23;;620:27;;;:::o;214:188:7:-;288:14;374:9;368:4;364:20;357:5;353:32;347:39;337:49;;323:73;;;;:::o;1028:119:5:-;1134:4;1124:8;1117:22;1115:26;;:::o" | |
} | |
], | |
"ast": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/executors/CallsScript.sol", | |
"exportedSymbols": { | |
"CallsScript": [ | |
149 | |
] | |
}, | |
"id": 150, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 1, | |
"literals": [ | |
"solidity", | |
"0.4", | |
".24" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "0:23:9" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/ScriptHelpers.sol", | |
"file": "../ScriptHelpers.sol", | |
"id": 2, | |
"nodeType": "ImportDirective", | |
"scope": 150, | |
"sourceUnit": 242, | |
"src": "82:30:9", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/executors/BaseEVMScriptExecutor.sol", | |
"file": "./BaseEVMScriptExecutor.sol", | |
"id": 3, | |
"nodeType": "ImportDirective", | |
"scope": 150, | |
"sourceUnit": 254, | |
"src": "113:37:9", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"baseContracts": [ | |
{ | |
"arguments": null, | |
"baseName": { | |
"contractScope": null, | |
"id": 4, | |
"name": "BaseEVMScriptExecutor", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 253, | |
"src": "177:21:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_BaseEVMScriptExecutor_$253", | |
"typeString": "contract BaseEVMScriptExecutor" | |
} | |
}, | |
"id": 5, | |
"nodeType": "InheritanceSpecifier", | |
"src": "177:21:9" | |
} | |
], | |
"contractDependencies": [ | |
253, | |
266, | |
286, | |
319, | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"id": 149, | |
"linearizedBaseContracts": [ | |
149, | |
253, | |
266, | |
319, | |
417, | |
464, | |
286 | |
], | |
"name": "CallsScript", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"id": 8, | |
"libraryName": { | |
"contractScope": null, | |
"id": 6, | |
"name": "ScriptHelpers", | |
"nodeType": "UserDefinedTypeName", | |
"referencedDeclaration": 241, | |
"src": "211:13:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_ScriptHelpers_$241", | |
"typeString": "library ScriptHelpers" | |
} | |
}, | |
"nodeType": "UsingForDirective", | |
"src": "205:30:9", | |
"typeName": { | |
"id": 7, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "229:5:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
} | |
}, | |
{ | |
"constant": true, | |
"id": 11, | |
"name": "EXECUTOR_TYPE", | |
"nodeType": "VariableDeclaration", | |
"scope": 149, | |
"src": "360:108:9", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 9, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "360:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "307832646338353861303066336534313762653133393462383763303731353865393839656336383163653863633638613930393336383061633161383730333032", | |
"id": 10, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "402:66:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_20708059268077943580677606616711462293513402141599588069272609168866821997314_by_1", | |
"typeString": "int_const 2070...(69 digits omitted)...7314" | |
}, | |
"value": "0x2dc858a00f3e417be1394b87c07158e989ec681ce8cc68a9093680ac1a870302" | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": true, | |
"id": 14, | |
"name": "ERROR_BLACKLISTED_CALL", | |
"nodeType": "VariableDeclaration", | |
"scope": 149, | |
"src": "475:76:9", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 12, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "475:6:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "45564d43414c4c535f424c41434b4c49535445445f43414c4c", | |
"id": 13, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "string", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "524:27:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_stringliteral_820e7bc5a5dbe3fe12a354732308daec36659428c18b63a8bd98d3e1a1aa880c", | |
"typeString": "literal_string \"EVMCALLS_BLACKLISTED_CALL\"" | |
}, | |
"value": "EVMCALLS_BLACKLISTED_CALL" | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"constant": true, | |
"id": 17, | |
"name": "ERROR_INVALID_LENGTH", | |
"nodeType": "VariableDeclaration", | |
"scope": 149, | |
"src": "557:72:9", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 15, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "557:6:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "45564d43414c4c535f494e56414c49445f4c454e475448", | |
"id": 16, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "string", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "604:25:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_stringliteral_b74cfdfb5c338a9838591e3a37b6a9b307874ae00970d0ccb03700cda2f9a5e1", | |
"typeString": "literal_string \"EVMCALLS_INVALID_LENGTH\"" | |
}, | |
"value": "EVMCALLS_INVALID_LENGTH" | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"constant": true, | |
"id": 20, | |
"name": "ERROR_CALL_REVERTED", | |
"nodeType": "VariableDeclaration", | |
"scope": 149, | |
"src": "635:70:9", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 18, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "635:6:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"value": { | |
"argumentTypes": null, | |
"hexValue": "45564d43414c4c535f43414c4c5f5245564552544544", | |
"id": 19, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "string", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "681:24:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_stringliteral_fab8d304730f38f30e781dc6f5c91780b542a6f546339d6869545bcbca7c9148", | |
"typeString": "literal_string \"EVMCALLS_CALL_REVERTED\"" | |
}, | |
"value": "EVMCALLS_CALL_REVERTED" | |
}, | |
"visibility": "private" | |
}, | |
{ | |
"anonymous": false, | |
"documentation": null, | |
"id": 28, | |
"name": "LogScriptCall", | |
"nodeType": "EventDefinition", | |
"parameters": { | |
"id": 27, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 22, | |
"indexed": true, | |
"name": "sender", | |
"nodeType": "VariableDeclaration", | |
"scope": 28, | |
"src": "732:22:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 21, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "732:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 24, | |
"indexed": true, | |
"name": "src", | |
"nodeType": "VariableDeclaration", | |
"scope": 28, | |
"src": "756:19:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 23, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "756:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 26, | |
"indexed": true, | |
"name": "dst", | |
"nodeType": "VariableDeclaration", | |
"scope": 28, | |
"src": "777:19:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 25, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "777:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "731:66:9" | |
}, | |
"src": "712:86:9" | |
}, | |
{ | |
"body": { | |
"id": 139, | |
"nodeType": "Block", | |
"src": "1277:1247:9", | |
"statements": [ | |
{ | |
"assignments": [ | |
43 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 43, | |
"name": "location", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1287:16:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 42, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1287:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 45, | |
"initialValue": { | |
"argumentTypes": null, | |
"id": 44, | |
"name": "SCRIPT_START_LOCATION", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 252, | |
"src": "1306:21:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1287:40:9" | |
}, | |
{ | |
"body": { | |
"id": 137, | |
"nodeType": "Block", | |
"src": "1400:1118:9", | |
"statements": [ | |
{ | |
"assignments": [ | |
51 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 51, | |
"name": "contractAddress", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1414:23:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"typeName": { | |
"id": 50, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "1414:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 56, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 54, | |
"name": "location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 43, | |
"src": "1458:8:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"expression": { | |
"argumentTypes": null, | |
"id": 52, | |
"name": "_script", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 30, | |
"src": "1440:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes calldata" | |
} | |
}, | |
"id": 53, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "addressAt", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 193, | |
"src": "1440:17:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_address_$bound_to$_t_bytes_memory_ptr_$", | |
"typeString": "function (bytes memory,uint256) pure returns (address)" | |
} | |
}, | |
"id": 55, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1440:27:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1414:53:9" | |
}, | |
{ | |
"body": { | |
"id": 77, | |
"nodeType": "Block", | |
"src": "1585:98:9", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"id": 73, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 69, | |
"name": "contractAddress", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 51, | |
"src": "1611:15:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "!=", | |
"rightExpression": { | |
"argumentTypes": null, | |
"baseExpression": { | |
"argumentTypes": null, | |
"id": 70, | |
"name": "_blacklist", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 35, | |
"src": "1630:10:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", | |
"typeString": "address[] calldata" | |
} | |
}, | |
"id": 72, | |
"indexExpression": { | |
"argumentTypes": null, | |
"id": 71, | |
"name": "i", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 58, | |
"src": "1641:1:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"nodeType": "IndexAccess", | |
"src": "1630:13:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"src": "1611:32:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 74, | |
"name": "ERROR_BLACKLISTED_CALL", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 14, | |
"src": "1645:22:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"id": 68, | |
"name": "require", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"src": "1603:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", | |
"typeString": "function (bool,string memory) pure" | |
} | |
}, | |
"id": 75, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1603:65:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 76, | |
"nodeType": "ExpressionStatement", | |
"src": "1603:65:9" | |
} | |
] | |
}, | |
"condition": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 64, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 61, | |
"name": "i", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 58, | |
"src": "1557:1:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "<", | |
"rightExpression": { | |
"argumentTypes": null, | |
"expression": { | |
"argumentTypes": null, | |
"id": 62, | |
"name": "_blacklist", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 35, | |
"src": "1561:10:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", | |
"typeString": "address[] calldata" | |
} | |
}, | |
"id": 63, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "length", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": null, | |
"src": "1561:17:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "1557:21:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"id": 78, | |
"initializationExpression": { | |
"assignments": [ | |
58 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 58, | |
"name": "i", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1545:6:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 57, | |
"name": "uint", | |
"nodeType": "ElementaryTypeName", | |
"src": "1545:4:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 60, | |
"initialValue": { | |
"argumentTypes": null, | |
"hexValue": "30", | |
"id": 59, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "1554:1:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_0_by_1", | |
"typeString": "int_const 0" | |
}, | |
"value": "0" | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1545:10:9" | |
}, | |
"loopExpression": { | |
"expression": { | |
"argumentTypes": null, | |
"id": 66, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"nodeType": "UnaryOperation", | |
"operator": "++", | |
"prefix": false, | |
"src": "1580:3:9", | |
"subExpression": { | |
"argumentTypes": null, | |
"id": 65, | |
"name": "i", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 58, | |
"src": "1580:1:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"id": 67, | |
"nodeType": "ExpressionStatement", | |
"src": "1580:3:9" | |
}, | |
"nodeType": "ForStatement", | |
"src": "1540:143:9" | |
}, | |
{ | |
"eventCall": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"expression": { | |
"argumentTypes": null, | |
"id": 80, | |
"name": "msg", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 585, | |
"src": "1856:3:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_magic_message", | |
"typeString": "msg" | |
} | |
}, | |
"id": 81, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "sender", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": null, | |
"src": "1856:10:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 83, | |
"name": "this", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 616, | |
"src": "1876:4:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_CallsScript_$149", | |
"typeString": "contract CallsScript" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_contract$_CallsScript_$149", | |
"typeString": "contract CallsScript" | |
} | |
], | |
"id": 82, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "ElementaryTypeNameExpression", | |
"src": "1868:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_type$_t_address_$", | |
"typeString": "type(address)" | |
}, | |
"typeName": "address" | |
}, | |
"id": 84, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "typeConversion", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1868:13:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 85, | |
"name": "contractAddress", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 51, | |
"src": "1883:15:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
{ | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
{ | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
], | |
"id": 79, | |
"name": "LogScriptCall", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 28, | |
"src": "1842:13:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$", | |
"typeString": "function (address,address,address)" | |
} | |
}, | |
"id": 86, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1842:57:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 87, | |
"nodeType": "EmitStatement", | |
"src": "1837:62:9" | |
}, | |
{ | |
"assignments": [ | |
89 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 89, | |
"name": "calldataLength", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1914:22:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 88, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1914:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 98, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 95, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 93, | |
"name": "location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 43, | |
"src": "1964:8:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "+", | |
"rightExpression": { | |
"argumentTypes": null, | |
"hexValue": "30783134", | |
"id": 94, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "1975:4:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_20_by_1", | |
"typeString": "int_const 20" | |
}, | |
"value": "0x14" | |
}, | |
"src": "1964:15:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"expression": { | |
"argumentTypes": null, | |
"id": 91, | |
"name": "_script", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 30, | |
"src": "1947:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes calldata" | |
} | |
}, | |
"id": 92, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "uint32At", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 211, | |
"src": "1947:16:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$bound_to$_t_bytes_memory_ptr_$", | |
"typeString": "function (bytes memory,uint256) pure returns (uint32)" | |
} | |
}, | |
"id": 96, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1947:33:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint32", | |
"typeString": "uint32" | |
} | |
], | |
"id": 90, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"nodeType": "ElementaryTypeNameExpression", | |
"src": "1939:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_type$_t_uint256_$", | |
"typeString": "type(uint256)" | |
}, | |
"typeName": "uint256" | |
}, | |
"id": 97, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "typeConversion", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "1939:42:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1914:67:9" | |
}, | |
{ | |
"assignments": [ | |
100 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 100, | |
"name": "startOffset", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1995:19:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 99, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "1995:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 106, | |
"initialValue": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 105, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 103, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 101, | |
"name": "location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 43, | |
"src": "2017:8:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "+", | |
"rightExpression": { | |
"argumentTypes": null, | |
"hexValue": "30783134", | |
"id": 102, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "2028:4:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_20_by_1", | |
"typeString": "int_const 20" | |
}, | |
"value": "0x14" | |
}, | |
"src": "2017:15:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "+", | |
"rightExpression": { | |
"argumentTypes": null, | |
"hexValue": "30783034", | |
"id": 104, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "2035:4:9", | |
"subdenomination": null, | |
"typeDescriptions": { | |
"typeIdentifier": "t_rational_4_by_1", | |
"typeString": "int_const 4" | |
}, | |
"value": "0x04" | |
}, | |
"src": "2017:22:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "1995:44:9" | |
}, | |
{ | |
"assignments": [ | |
108 | |
], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 108, | |
"name": "calldataStart", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "2053:21:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 107, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "2053:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 113, | |
"initialValue": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 111, | |
"name": "startOffset", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 100, | |
"src": "2096:11:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
], | |
"expression": { | |
"argumentTypes": null, | |
"id": 109, | |
"name": "_script", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 30, | |
"src": "2077:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes calldata" | |
} | |
}, | |
"id": 110, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "locationOf", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 222, | |
"src": "2077:18:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_bytes_memory_ptr_$", | |
"typeString": "function (bytes memory,uint256) pure returns (uint256)" | |
} | |
}, | |
"id": 112, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "2077:31:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "2053:55:9" | |
}, | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"id": 118, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftHandSide": { | |
"argumentTypes": null, | |
"id": 114, | |
"name": "location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 43, | |
"src": "2176:8:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "Assignment", | |
"operator": "=", | |
"rightHandSide": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 117, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 115, | |
"name": "startOffset", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 100, | |
"src": "2187:11:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "+", | |
"rightExpression": { | |
"argumentTypes": null, | |
"id": 116, | |
"name": "calldataLength", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 89, | |
"src": "2201:14:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "2187:28:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "2176:39:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"id": 119, | |
"nodeType": "ExpressionStatement", | |
"src": "2176:39:9" | |
}, | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 124, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 121, | |
"name": "location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 43, | |
"src": "2237:8:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "<=", | |
"rightExpression": { | |
"argumentTypes": null, | |
"expression": { | |
"argumentTypes": null, | |
"id": 122, | |
"name": "_script", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 30, | |
"src": "2249:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes calldata" | |
} | |
}, | |
"id": 123, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "length", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": null, | |
"src": "2249:14:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "2237:26:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 125, | |
"name": "ERROR_INVALID_LENGTH", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 17, | |
"src": "2265:20:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"id": 120, | |
"name": "require", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"src": "2229:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", | |
"typeString": "function (bool,string memory) pure" | |
} | |
}, | |
"id": 126, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "2229:57:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 127, | |
"nodeType": "ExpressionStatement", | |
"src": "2229:57:9" | |
}, | |
{ | |
"assignments": [], | |
"declarations": [ | |
{ | |
"constant": false, | |
"id": 129, | |
"name": "success", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "2301:12:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
"typeName": { | |
"id": 128, | |
"name": "bool", | |
"nodeType": "ElementaryTypeName", | |
"src": "2301:4:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"id": 130, | |
"initialValue": null, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "2301:12:9" | |
}, | |
{ | |
"externalReferences": [ | |
{ | |
"contractAddress": { | |
"declaration": 51, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "2386:15:9", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"calldataStart": { | |
"declaration": 108, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "2406:13:9", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"calldataLength": { | |
"declaration": 89, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "2421:14:9", | |
"valueSize": 1 | |
} | |
}, | |
{ | |
"success": { | |
"declaration": 129, | |
"isOffset": false, | |
"isSlot": false, | |
"src": "2354:7:9", | |
"valueSize": 1 | |
} | |
} | |
], | |
"id": 131, | |
"nodeType": "InlineAssembly", | |
"operations": "{\n success := call(sub(gas(), 5000), contractAddress, 0, calldataStart, calldataLength, 0, 0)\n}", | |
"src": "2327:150:9" | |
}, | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"arguments": [ | |
{ | |
"argumentTypes": null, | |
"id": 133, | |
"name": "success", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 129, | |
"src": "2478:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
{ | |
"argumentTypes": null, | |
"id": 134, | |
"name": "ERROR_CALL_REVERTED", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 20, | |
"src": "2487:19:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
}, | |
{ | |
"typeIdentifier": "t_string_memory", | |
"typeString": "string memory" | |
} | |
], | |
"id": 132, | |
"name": "require", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [ | |
588, | |
589 | |
], | |
"referencedDeclaration": 589, | |
"src": "2470:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", | |
"typeString": "function (bool,string memory) pure" | |
} | |
}, | |
"id": 135, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "2470:37:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$__$", | |
"typeString": "tuple()" | |
} | |
}, | |
"id": 136, | |
"nodeType": "ExpressionStatement", | |
"src": "2470:37:9" | |
} | |
] | |
}, | |
"condition": { | |
"argumentTypes": null, | |
"commonType": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"id": 49, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftExpression": { | |
"argumentTypes": null, | |
"id": 46, | |
"name": "location", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 43, | |
"src": "1373:8:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"nodeType": "BinaryOperation", | |
"operator": "<", | |
"rightExpression": { | |
"argumentTypes": null, | |
"expression": { | |
"argumentTypes": null, | |
"id": 47, | |
"name": "_script", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 30, | |
"src": "1384:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes calldata" | |
} | |
}, | |
"id": 48, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "length", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": null, | |
"src": "1384:14:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"src": "1373:25:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bool", | |
"typeString": "bool" | |
} | |
}, | |
"id": 138, | |
"nodeType": "WhileStatement", | |
"src": "1366:1152:9" | |
} | |
] | |
}, | |
"documentation": "@notice Executes a number of call scripts\n@param _script [ specId (uint32) ] many calls with this structure ->\n [ to (address: 20 bytes) ] [ calldataLength (uint32: 4 bytes) ] [ calldata (calldataLength bytes) ]\n@param _blacklist Addresses the script cannot call to, or will revert.\n@return always returns empty byte array", | |
"id": 140, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": false, | |
"modifiers": [ | |
{ | |
"arguments": null, | |
"id": 38, | |
"modifierName": { | |
"argumentTypes": null, | |
"id": 37, | |
"name": "isInitialized", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 359, | |
"src": "1247:13:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_modifier$__$", | |
"typeString": "modifier ()" | |
} | |
}, | |
"nodeType": "ModifierInvocation", | |
"src": "1247:13:9" | |
} | |
], | |
"name": "execScript", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 36, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 30, | |
"name": "_script", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1194:13:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 29, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1194:5:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 32, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1209:5:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_calldata_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 31, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1209:5:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 35, | |
"name": "_blacklist", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1216:20:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", | |
"typeString": "address[]" | |
}, | |
"typeName": { | |
"baseType": { | |
"id": 33, | |
"name": "address", | |
"nodeType": "ElementaryTypeName", | |
"src": "1216:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
}, | |
"id": 34, | |
"length": null, | |
"nodeType": "ArrayTypeName", | |
"src": "1216:9:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", | |
"typeString": "address[]" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1193:44:9" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 41, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 40, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 140, | |
"src": "1270:5:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_memory_ptr", | |
"typeString": "bytes" | |
}, | |
"typeName": { | |
"id": 39, | |
"name": "bytes", | |
"nodeType": "ElementaryTypeName", | |
"src": "1270:5:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes_storage_ptr", | |
"typeString": "bytes" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "1269:7:9" | |
}, | |
"scope": 149, | |
"src": "1174:1350:9", | |
"stateMutability": "nonpayable", | |
"superFunction": 280, | |
"visibility": "external" | |
}, | |
{ | |
"body": { | |
"id": 147, | |
"nodeType": "Block", | |
"src": "2586:37:9", | |
"statements": [ | |
{ | |
"expression": { | |
"argumentTypes": null, | |
"id": 145, | |
"name": "EXECUTOR_TYPE", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 11, | |
"src": "2603:13:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"functionReturnParameters": 144, | |
"id": 146, | |
"nodeType": "Return", | |
"src": "2596:20:9" | |
} | |
] | |
}, | |
"documentation": null, | |
"id": 148, | |
"implemented": true, | |
"isConstructor": false, | |
"isDeclaredConst": true, | |
"modifiers": [], | |
"name": "executorType", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 141, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "2551:2:9" | |
}, | |
"payable": false, | |
"returnParameters": { | |
"id": 144, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 143, | |
"name": "", | |
"nodeType": "VariableDeclaration", | |
"scope": 148, | |
"src": "2577:7:9", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
}, | |
"typeName": { | |
"id": 142, | |
"name": "bytes32", | |
"nodeType": "ElementaryTypeName", | |
"src": "2577:7:9", | |
"typeDescriptions": { | |
"typeIdentifier": "t_bytes32", | |
"typeString": "bytes32" | |
} | |
}, | |
"value": null, | |
"visibility": "internal" | |
} | |
], | |
"src": "2576:9:9" | |
}, | |
"scope": 149, | |
"src": "2530:93:9", | |
"stateMutability": "pure", | |
"superFunction": 285, | |
"visibility": "external" | |
} | |
], | |
"scope": 150, | |
"src": "153:2472:9" | |
} | |
], | |
"src": "0:2626:9" | |
}, | |
"legacyAST": { | |
"attributes": { | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/executors/CallsScript.sol", | |
"exportedSymbols": { | |
"CallsScript": [ | |
149 | |
] | |
} | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"literals": [ | |
"solidity", | |
"0.4", | |
".24" | |
] | |
}, | |
"id": 1, | |
"name": "PragmaDirective", | |
"src": "0:23:9" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 242, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/ScriptHelpers.sol", | |
"file": "../ScriptHelpers.sol", | |
"scope": 150, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 2, | |
"name": "ImportDirective", | |
"src": "82:30:9" | |
}, | |
{ | |
"attributes": { | |
"SourceUnit": 254, | |
"absolutePath": "/src/external-vcs/github/aragonOS/contracts/evmscript/executors/BaseEVMScriptExecutor.sol", | |
"file": "./BaseEVMScriptExecutor.sol", | |
"scope": 150, | |
"symbolAliases": [ | |
null | |
], | |
"unitAlias": "" | |
}, | |
"id": 3, | |
"name": "ImportDirective", | |
"src": "113:37:9" | |
}, | |
{ | |
"attributes": { | |
"contractDependencies": [ | |
253, | |
266, | |
286, | |
319, | |
417, | |
464 | |
], | |
"contractKind": "contract", | |
"documentation": null, | |
"fullyImplemented": true, | |
"linearizedBaseContracts": [ | |
149, | |
253, | |
266, | |
319, | |
417, | |
464, | |
286 | |
], | |
"name": "CallsScript", | |
"scope": 150 | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"arguments": null | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "BaseEVMScriptExecutor", | |
"referencedDeclaration": 253, | |
"type": "contract BaseEVMScriptExecutor" | |
}, | |
"id": 4, | |
"name": "UserDefinedTypeName", | |
"src": "177:21:9" | |
} | |
], | |
"id": 5, | |
"name": "InheritanceSpecifier", | |
"src": "177:21:9" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"contractScope": null, | |
"name": "ScriptHelpers", | |
"referencedDeclaration": 241, | |
"type": "library ScriptHelpers" | |
}, | |
"id": 6, | |
"name": "UserDefinedTypeName", | |
"src": "211:13:9" | |
}, | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 7, | |
"name": "ElementaryTypeName", | |
"src": "229:5:9" | |
} | |
], | |
"id": 8, | |
"name": "UsingForDirective", | |
"src": "205:30:9" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "EXECUTOR_TYPE", | |
"scope": 149, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "bytes32", | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes32", | |
"type": "bytes32" | |
}, | |
"id": 9, | |
"name": "ElementaryTypeName", | |
"src": "360:7:9" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "307832646338353861303066336534313762653133393462383763303731353865393839656336383163653863633638613930393336383061633161383730333032", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "number", | |
"type": "int_const 2070...(69 digits omitted)...7314", | |
"value": "0x2dc858a00f3e417be1394b87c07158e989ec681ce8cc68a9093680ac1a870302" | |
}, | |
"id": 10, | |
"name": "Literal", | |
"src": "402:66:9" | |
} | |
], | |
"id": 11, | |
"name": "VariableDeclaration", | |
"src": "360:108:9" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "ERROR_BLACKLISTED_CALL", | |
"scope": 149, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "string", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "string", | |
"type": "string" | |
}, | |
"id": 12, | |
"name": "ElementaryTypeName", | |
"src": "475:6:9" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "45564d43414c4c535f424c41434b4c49535445445f43414c4c", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "string", | |
"type": "literal_string \"EVMCALLS_BLACKLISTED_CALL\"", | |
"value": "EVMCALLS_BLACKLISTED_CALL" | |
}, | |
"id": 13, | |
"name": "Literal", | |
"src": "524:27:9" | |
} | |
], | |
"id": 14, | |
"name": "VariableDeclaration", | |
"src": "475:76:9" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "ERROR_INVALID_LENGTH", | |
"scope": 149, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "string", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "string", | |
"type": "string" | |
}, | |
"id": 15, | |
"name": "ElementaryTypeName", | |
"src": "557:6:9" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "45564d43414c4c535f494e56414c49445f4c454e475448", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "string", | |
"type": "literal_string \"EVMCALLS_INVALID_LENGTH\"", | |
"value": "EVMCALLS_INVALID_LENGTH" | |
}, | |
"id": 16, | |
"name": "Literal", | |
"src": "604:25:9" | |
} | |
], | |
"id": 17, | |
"name": "VariableDeclaration", | |
"src": "557:72:9" | |
}, | |
{ | |
"attributes": { | |
"constant": true, | |
"name": "ERROR_CALL_REVERTED", | |
"scope": 149, | |
"stateVariable": true, | |
"storageLocation": "default", | |
"type": "string", | |
"visibility": "private" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "string", | |
"type": "string" | |
}, | |
"id": 18, | |
"name": "ElementaryTypeName", | |
"src": "635:6:9" | |
}, | |
{ | |
"attributes": { | |
"argumentTypes": null, | |
"hexvalue": "45564d43414c4c535f43414c4c5f5245564552544544", | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"lValueRequested": false, | |
"subdenomination": null, | |
"token": "string", | |
"type": "literal_string \"EVMCALLS_CALL_REVERTED\"", | |
"value": "EVMCALLS_CALL_REVERTED" | |
}, | |
"id": 19, | |
"name": "Literal", | |
"src": "681:24:9" | |
} | |
], | |
"id": 20, | |
"name": "VariableDeclaration", | |
"src": "635:70:9" | |
}, | |
{ | |
"attributes": { | |
"anonymous": false, | |
"documentation": null, | |
"name": "LogScriptCall" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"indexed": true, | |
"name": "sender", | |
"scope": 28, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 21, | |
"name": "ElementaryTypeName", | |
"src": "732:7:9" | |
} | |
], | |
"id": 22, | |
"name": "VariableDeclaration", | |
"src": "732:22:9" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"indexed": true, | |
"name": "src", | |
"scope": 28, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 23, | |
"name": "ElementaryTypeName", | |
"src": "756:7:9" | |
} | |
], | |
"id": 24, | |
"name": "VariableDeclaration", | |
"src": "756:19:9" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"indexed": true, | |
"name": "dst", | |
"scope": 28, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 25, | |
"name": "ElementaryTypeName", | |
"src": "777:7:9" | |
} | |
], | |
"id": 26, | |
"name": "VariableDeclaration", | |
"src": "777:19:9" | |
} | |
], | |
"id": 27, | |
"name": "ParameterList", | |
"src": "731:66:9" | |
} | |
], | |
"id": 28, | |
"name": "EventDefinition", | |
"src": "712:86:9" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"documentation": "@notice Executes a number of call scripts\n@param _script [ specId (uint32) ] many calls with this structure ->\n [ to (address: 20 bytes) ] [ calldataLength (uint32: 4 bytes) ] [ calldata (calldataLength bytes) ]\n@param _blacklist Addresses the script cannot call to, or will revert.\n@return always returns empty byte array", | |
"implemented": true, | |
"isConstructor": false, | |
"name": "execScript", | |
"payable": false, | |
"scope": 149, | |
"stateMutability": "nonpayable", | |
"superFunction": 280, | |
"visibility": "external" | |
}, | |
"children": [ | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_script", | |
"scope": 140, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 29, | |
"name": "ElementaryTypeName", | |
"src": "1194:5:9" | |
} | |
], | |
"id": 30, | |
"name": "VariableDeclaration", | |
"src": "1194:13:9" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
"scope": 140, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "bytes", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "bytes", | |
"type": "bytes" | |
}, | |
"id": 31, | |
"name": "ElementaryTypeName", | |
"src": "1209:5:9" | |
} | |
], | |
"id": 32, | |
"name": "VariableDeclaration", | |
"src": "1209:5:9" | |
}, | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "_blacklist", | |
"scope": 140, | |
"stateVariable": false, | |
"storageLocation": "default", | |
"type": "address[]", | |
"value": null, | |
"visibility": "internal" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"length": null, | |
"type": "address[]" | |
}, | |
"children": [ | |
{ | |
"attributes": { | |
"name": "address", | |
"type": "address" | |
}, | |
"id": 33, | |
"name": "ElementaryTypeName", | |
"src": "1216:7:9" | |
} | |
], | |
"id": 34, | |
"name": "ArrayTypeName", | |
"src": "1216:9:9" | |
} | |
], | |
"id": 35, | |
"name": "VariableDeclaration", | |
"src": "1216:20:9" | |
} | |
], | |
"id": 36, | |
"name": "ParameterList", | |
"src": "1193:44:9" | |
}, | |
{ | |
"children": [ | |
{ | |
"attributes": { | |
"constant": false, | |
"name": "", | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment