{ "contractName": "SafeMathMock", "abi": [ { "constant": true, "inputs": [ { "name": "a", "type": "uint256" }, { "name": "b", "type": "uint256" } ], "name": "mul", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "pure", "type": "function" }, { "constant": true, "inputs": [ { "name": "a", "type": "uint256" }, { "name": "b", "type": "uint256" } ], "name": "div", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "pure", "type": "function" }, { "constant": true, "inputs": [ { "name": "a", "type": "uint256" }, { "name": "b", "type": "uint256" } ], "name": "sub", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "pure", "type": "function" }, { "constant": true, "inputs": [ { "name": "a", "type": "uint256" }, { "name": "b", "type": "uint256" } ], "name": "add", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "pure", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b50610292806100206000396000f300608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063771602f714610067578063a391c15b146100b2578063b67d77c5146100fd578063c8a4ac9c14610148575b600080fd5b34801561007357600080fd5b5061009c6004803603810190808035906020019092919080359060200190929190505050610193565b6040518082815260200191505060405180910390f35b3480156100be57600080fd5b506100e760048036038101908080359060200190929190803590602001909291905050506101a7565b6040518082815260200191505060405180910390f35b34801561010957600080fd5b5061013260048036038101908080359060200190929190803590602001909291905050506101bb565b6040518082815260200191505060405180910390f35b34801561015457600080fd5b5061017d60048036038101908080359060200190929190803590602001909291905050506101cf565b6040518082815260200191505060405180910390f35b600061019f83836101e3565b905092915050565b60006101b383836101ff565b905092915050565b60006101c78383610215565b905092915050565b60006101db838361022e565b905092915050565b600081830190508281101515156101f657fe5b80905092915050565b6000818381151561020c57fe5b04905092915050565b600082821115151561022357fe5b818303905092915050565b6000808314156102415760009050610260565b818302905081838281151561025257fe5b0414151561025c57fe5b8090505b929150505600a165627a7a72305820a546ec3e413aa882b92ac0a41e2277b8c4bf2fac164cc1775033322614a930c60029", "deployedBytecode": "0x608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063771602f714610067578063a391c15b146100b2578063b67d77c5146100fd578063c8a4ac9c14610148575b600080fd5b34801561007357600080fd5b5061009c6004803603810190808035906020019092919080359060200190929190505050610193565b6040518082815260200191505060405180910390f35b3480156100be57600080fd5b506100e760048036038101908080359060200190929190803590602001909291905050506101a7565b6040518082815260200191505060405180910390f35b34801561010957600080fd5b5061013260048036038101908080359060200190929190803590602001909291905050506101bb565b6040518082815260200191505060405180910390f35b34801561015457600080fd5b5061017d60048036038101908080359060200190929190803590602001909291905050506101cf565b6040518082815260200191505060405180910390f35b600061019f83836101e3565b905092915050565b60006101b383836101ff565b905092915050565b60006101c78383610215565b905092915050565b60006101db838361022e565b905092915050565b600081830190508281101515156101f657fe5b80905092915050565b6000818381151561020c57fe5b04905092915050565b600082821115151561022357fe5b818303905092915050565b6000808314156102415760009050610260565b818302905081838281151561025257fe5b0414151561025c57fe5b8090505b929150505600a165627a7a72305820a546ec3e413aa882b92ac0a41e2277b8c4bf2fac164cc1775033322614a930c60029", "sourceMap": "60:445:22:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;60:445:22;;;;;;;", "deployedSourceMap": "60:445:22:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;402:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;402:101:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192;;8:9:-1;5:2;;;30:1;27;20:12;5:2;192:101:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;297;;8:9:-1;5:2;;;30:1;27;20:12;5:2;297:101:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;87;;8:9:-1;5:2;;;30:1;27;20:12;5:2;87:101:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;402;458:7;480:18;493:1;496;480:12;:18::i;:::-;473:25;;402:101;;;;:::o;192:::-;248:7;270:18;283:1;286;270:12;:18::i;:::-;263:25;;192:101;;;;:::o;297:::-;353:7;375:18;388:1;391;375:12;:18::i;:::-;368:25;;297:101;;;;:::o;87:::-;143:7;165:18;178:1;181;165:12;:18::i;:::-;158:25;;87:101;;;;:::o;1008:123:6:-;1066:9;1091:1;1087;:5;1083:9;;1110:1;1105;:6;;1098:14;;;;;;1125:1;1118:8;;1008:123;;;;:::o;452:272::-;510:7;718:1;714;:5;;;;;;;;707:12;;452:272;;;;:::o;836:110::-;894:7;921:1;916;:6;;909:14;;;;;;940:1;936;:5;929:12;;836:110;;;;:::o;203:167::-;261:9;287:1;282;:6;278:35;;;305:1;298:8;;;;278:35;326:1;322;:5;318:9;;349:1;344;340;:5;;;;;;;;:10;333:18;;;;;;364:1;357:8;;203:167;;;;;:::o", "source": "pragma solidity ^0.4.21;\n\n\nimport \"../math/SafeMath.sol\";\n\n\ncontract SafeMathMock {\n\n function mul(uint256 a, uint256 b) public pure returns (uint256) {\n return SafeMath.mul(a, b);\n }\n\n function div(uint256 a, uint256 b) public pure returns (uint256) {\n return SafeMath.div(a, b);\n }\n\n function sub(uint256 a, uint256 b) public pure returns (uint256) {\n return SafeMath.sub(a, b);\n }\n\n function add(uint256 a, uint256 b) public pure returns (uint256) {\n return SafeMath.add(a, b);\n }\n}\n", "sourcePath": "/home/spalladino/Projects/openzeppelin-zos/contracts/mocks/SafeMathMock.sol", "ast": { "absolutePath": "/home/spalladino/Projects/openzeppelin-zos/contracts/mocks/SafeMathMock.sol", "exportedSymbols": { "SafeMathMock": [ 1468 ] }, "id": 1469, "nodeType": "SourceUnit", "nodes": [ { "id": 1402, "literals": [ "solidity", "^", "0.4", ".21" ], "nodeType": "PragmaDirective", "src": "0:24:22" }, { "absolutePath": "/home/spalladino/Projects/openzeppelin-zos/contracts/math/SafeMath.sol", "file": "../math/SafeMath.sol", "id": 1403, "nodeType": "ImportDirective", "scope": 1469, "sourceUnit": 537, "src": "27:30:22", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 1468, "linearizedBaseContracts": [ 1468 ], "name": "SafeMathMock", "nodeType": "ContractDefinition", "nodes": [ { "body": { "id": 1418, "nodeType": "Block", "src": "152:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1414, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1405, "src": "178:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1415, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1407, "src": "181:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1412, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "165:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1413, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", "referencedDeclaration": 477, "src": "165:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1416, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "165:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1411, "id": 1417, "nodeType": "Return", "src": "158:25:22" } ] }, "documentation": null, "id": 1419, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "mul", "nodeType": "FunctionDefinition", "parameters": { "id": 1408, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1405, "name": "a", "nodeType": "VariableDeclaration", "scope": 1419, "src": "100:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1404, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "100:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1407, "name": "b", "nodeType": "VariableDeclaration", "scope": 1419, "src": "111:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1406, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "111:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "99:22:22" }, "payable": false, "returnParameters": { "id": 1411, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1410, "name": "", "nodeType": "VariableDeclaration", "scope": 1419, "src": "143:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1409, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "143:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "142:9:22" }, "scope": 1468, "src": "87:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1434, "nodeType": "Block", "src": "257:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1430, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1421, "src": "283:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1431, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1423, "src": "286:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1428, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "270:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1429, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", "referencedDeclaration": 491, "src": "270:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1432, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "270:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1427, "id": 1433, "nodeType": "Return", "src": "263:25:22" } ] }, "documentation": null, "id": 1435, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "div", "nodeType": "FunctionDefinition", "parameters": { "id": 1424, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1421, "name": "a", "nodeType": "VariableDeclaration", "scope": 1435, "src": "205:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1420, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "205:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1423, "name": "b", "nodeType": "VariableDeclaration", "scope": 1435, "src": "216:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1422, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "216:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "204:22:22" }, "payable": false, "returnParameters": { "id": 1427, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1426, "name": "", "nodeType": "VariableDeclaration", "scope": 1435, "src": "248:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1425, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "248:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "247:9:22" }, "scope": 1468, "src": "192:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1450, "nodeType": "Block", "src": "362:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1446, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1437, "src": "388:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1447, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1439, "src": "391:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1444, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "375:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1445, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", "referencedDeclaration": 511, "src": "375:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1448, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "375:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1443, "id": 1449, "nodeType": "Return", "src": "368:25:22" } ] }, "documentation": null, "id": 1451, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "sub", "nodeType": "FunctionDefinition", "parameters": { "id": 1440, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1437, "name": "a", "nodeType": "VariableDeclaration", "scope": 1451, "src": "310:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1436, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "310:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1439, "name": "b", "nodeType": "VariableDeclaration", "scope": 1451, "src": "321:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1438, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "321:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "309:22:22" }, "payable": false, "returnParameters": { "id": 1443, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1442, "name": "", "nodeType": "VariableDeclaration", "scope": 1451, "src": "353:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1441, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "353:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "352:9:22" }, "scope": 1468, "src": "297:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1466, "nodeType": "Block", "src": "467:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1462, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1453, "src": "493:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1463, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1455, "src": "496:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1460, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "480:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1461, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 535, "src": "480:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1464, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "480:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1459, "id": 1465, "nodeType": "Return", "src": "473:25:22" } ] }, "documentation": null, "id": 1467, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "add", "nodeType": "FunctionDefinition", "parameters": { "id": 1456, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1453, "name": "a", "nodeType": "VariableDeclaration", "scope": 1467, "src": "415:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1452, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "415:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1455, "name": "b", "nodeType": "VariableDeclaration", "scope": 1467, "src": "426:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1454, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "426:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "414:22:22" }, "payable": false, "returnParameters": { "id": 1459, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1458, "name": "", "nodeType": "VariableDeclaration", "scope": 1467, "src": "458:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1457, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "458:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "457:9:22" }, "scope": 1468, "src": "402:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], "scope": 1469, "src": "60:445:22" } ], "src": "0:506:22" }, "legacyAST": { "absolutePath": "/home/spalladino/Projects/openzeppelin-zos/contracts/mocks/SafeMathMock.sol", "exportedSymbols": { "SafeMathMock": [ 1468 ] }, "id": 1469, "nodeType": "SourceUnit", "nodes": [ { "id": 1402, "literals": [ "solidity", "^", "0.4", ".21" ], "nodeType": "PragmaDirective", "src": "0:24:22" }, { "absolutePath": "/home/spalladino/Projects/openzeppelin-zos/contracts/math/SafeMath.sol", "file": "../math/SafeMath.sol", "id": 1403, "nodeType": "ImportDirective", "scope": 1469, "sourceUnit": 537, "src": "27:30:22", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 1468, "linearizedBaseContracts": [ 1468 ], "name": "SafeMathMock", "nodeType": "ContractDefinition", "nodes": [ { "body": { "id": 1418, "nodeType": "Block", "src": "152:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1414, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1405, "src": "178:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1415, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1407, "src": "181:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1412, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "165:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1413, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", "referencedDeclaration": 477, "src": "165:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1416, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "165:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1411, "id": 1417, "nodeType": "Return", "src": "158:25:22" } ] }, "documentation": null, "id": 1419, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "mul", "nodeType": "FunctionDefinition", "parameters": { "id": 1408, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1405, "name": "a", "nodeType": "VariableDeclaration", "scope": 1419, "src": "100:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1404, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "100:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1407, "name": "b", "nodeType": "VariableDeclaration", "scope": 1419, "src": "111:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1406, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "111:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "99:22:22" }, "payable": false, "returnParameters": { "id": 1411, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1410, "name": "", "nodeType": "VariableDeclaration", "scope": 1419, "src": "143:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1409, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "143:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "142:9:22" }, "scope": 1468, "src": "87:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1434, "nodeType": "Block", "src": "257:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1430, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1421, "src": "283:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1431, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1423, "src": "286:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1428, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "270:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1429, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", "referencedDeclaration": 491, "src": "270:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1432, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "270:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1427, "id": 1433, "nodeType": "Return", "src": "263:25:22" } ] }, "documentation": null, "id": 1435, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "div", "nodeType": "FunctionDefinition", "parameters": { "id": 1424, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1421, "name": "a", "nodeType": "VariableDeclaration", "scope": 1435, "src": "205:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1420, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "205:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1423, "name": "b", "nodeType": "VariableDeclaration", "scope": 1435, "src": "216:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1422, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "216:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "204:22:22" }, "payable": false, "returnParameters": { "id": 1427, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1426, "name": "", "nodeType": "VariableDeclaration", "scope": 1435, "src": "248:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1425, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "248:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "247:9:22" }, "scope": 1468, "src": "192:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1450, "nodeType": "Block", "src": "362:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1446, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1437, "src": "388:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1447, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1439, "src": "391:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1444, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "375:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1445, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", "referencedDeclaration": 511, "src": "375:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1448, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "375:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1443, "id": 1449, "nodeType": "Return", "src": "368:25:22" } ] }, "documentation": null, "id": 1451, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "sub", "nodeType": "FunctionDefinition", "parameters": { "id": 1440, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1437, "name": "a", "nodeType": "VariableDeclaration", "scope": 1451, "src": "310:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1436, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "310:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1439, "name": "b", "nodeType": "VariableDeclaration", "scope": 1451, "src": "321:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1438, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "321:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "309:22:22" }, "payable": false, "returnParameters": { "id": 1443, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1442, "name": "", "nodeType": "VariableDeclaration", "scope": 1451, "src": "353:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1441, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "353:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "352:9:22" }, "scope": 1468, "src": "297:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1466, "nodeType": "Block", "src": "467:36:22", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 1462, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1453, "src": "493:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "argumentTypes": null, "id": 1463, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1455, "src": "496:1:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "id": 1460, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 536, "src": "480:8:22", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeMath_$536_$", "typeString": "type(library SafeMath)" } }, "id": 1461, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 535, "src": "480:12:22", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 1464, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "480:18:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 1459, "id": 1465, "nodeType": "Return", "src": "473:25:22" } ] }, "documentation": null, "id": 1467, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "add", "nodeType": "FunctionDefinition", "parameters": { "id": 1456, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1453, "name": "a", "nodeType": "VariableDeclaration", "scope": 1467, "src": "415:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1452, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "415:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1455, "name": "b", "nodeType": "VariableDeclaration", "scope": 1467, "src": "426:9:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1454, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "426:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "414:22:22" }, "payable": false, "returnParameters": { "id": 1459, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1458, "name": "", "nodeType": "VariableDeclaration", "scope": 1467, "src": "458:7:22", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1457, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "458:7:22", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "457:9:22" }, "scope": 1468, "src": "402:101:22", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], "scope": 1469, "src": "60:445:22" } ], "src": "0:506:22" }, "compiler": { "name": "solc", "version": "0.4.24+commit.e67f0147.Emscripten.clang" }, "networks": {}, "schemaVersion": "2.0.1", "updatedAt": "2018-08-23T14:35:50.625Z" }