@josojo/realitytoken-contracts
Version:
realitytoken basic contracts
1,302 lines • 94.3 kB
JSON
{
"contractName": "RealitioSafeMath256",
"abi": [],
"bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820d82eccc1dc6ec8c5eb7c024c7f45290af00389169822014c2c8d9a85a42c7e1f0029",
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820d82eccc1dc6ec8c5eb7c024c7f45290af00389169822014c2c8d9a85a42c7e1f0029",
"sourceMap": "126:723:22:-;;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": "126:723:22:-;;;;;;;;",
"source": "pragma solidity 0.4.25;\n\n/**\n * @title ReailtioSafeMath256\n * @dev Math operations with safety checks that throw on error\n */\nlibrary RealitioSafeMath256 {\n function mul(uint256 a, uint256 b) internal pure returns (uint256) {\n if (a == 0) {\n return 0;\n }\n uint256 c = a * b;\n assert(c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal pure returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal pure returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal pure returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n}\n",
"sourcePath": "@realitio/realitio-contracts/truffle/contracts/RealitioSafeMath256.sol",
"ast": {
"absolutePath": "@realitio/realitio-contracts/truffle/contracts/RealitioSafeMath256.sol",
"exportedSymbols": {
"RealitioSafeMath256": [
9044
]
},
"id": 9045,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 8948,
"literals": [
"solidity",
"0.4",
".25"
],
"nodeType": "PragmaDirective",
"src": "0:23:22"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "library",
"documentation": "@title ReailtioSafeMath256\n@dev Math operations with safety checks that throw on error",
"fullyImplemented": true,
"id": 9044,
"linearizedBaseContracts": [
9044
],
"name": "RealitioSafeMath256",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 8980,
"nodeType": "Block",
"src": "225:106:22",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 8959,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 8957,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8950,
"src": "235:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 8958,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "240:1:22",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "235:6:22",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 8963,
"nodeType": "IfStatement",
"src": "231:35:22",
"trueBody": {
"id": 8962,
"nodeType": "Block",
"src": "243:23:22",
"statements": [
{
"expression": {
"argumentTypes": null,
"hexValue": "30",
"id": 8960,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "258:1:22",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"functionReturnParameters": 8956,
"id": 8961,
"nodeType": "Return",
"src": "251:8:22"
}
]
}
},
{
"assignments": [
8965
],
"declarations": [
{
"constant": false,
"id": 8965,
"name": "c",
"nodeType": "VariableDeclaration",
"scope": 8981,
"src": "271:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8964,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "271:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 8969,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 8968,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 8966,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8950,
"src": "283:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"argumentTypes": null,
"id": 8967,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8952,
"src": "287:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "283:5:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "271:17:22"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 8975,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 8973,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 8971,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8965,
"src": "301:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "/",
"rightExpression": {
"argumentTypes": null,
"id": 8972,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8950,
"src": "305:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "301:5:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 8974,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8952,
"src": "310:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "301:10:22",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 8970,
"name": "assert",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9169,
"src": "294:6:22",
"typeDescriptions": {
"typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 8976,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "294:18:22",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 8977,
"nodeType": "ExpressionStatement",
"src": "294:18:22"
},
{
"expression": {
"argumentTypes": null,
"id": 8978,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8965,
"src": "325:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 8956,
"id": 8979,
"nodeType": "Return",
"src": "318:8:22"
}
]
},
"documentation": null,
"id": 8981,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "mul",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 8953,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 8950,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 8981,
"src": "171:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8949,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "171:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 8952,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 8981,
"src": "182:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8951,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "182:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "170:22:22"
},
"payable": false,
"returnParameters": {
"id": 8956,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 8955,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 8981,
"src": "216:7:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8954,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "216:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "215:9:22"
},
"scope": 9044,
"src": "158:173:22",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 8998,
"nodeType": "Block",
"src": "402:198:22",
"statements": [
{
"assignments": [
8991
],
"declarations": [
{
"constant": false,
"id": 8991,
"name": "c",
"nodeType": "VariableDeclaration",
"scope": 8999,
"src": "482:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8990,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "482:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 8995,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 8994,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 8992,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8983,
"src": "494:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "/",
"rightExpression": {
"argumentTypes": null,
"id": 8993,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8985,
"src": "498:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "494:5:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "482:17:22"
},
{
"expression": {
"argumentTypes": null,
"id": 8996,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8991,
"src": "594:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 8989,
"id": 8997,
"nodeType": "Return",
"src": "587:8:22"
}
]
},
"documentation": null,
"id": 8999,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "div",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 8986,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 8983,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 8999,
"src": "348:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8982,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "348:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 8985,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 8999,
"src": "359:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8984,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "359:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "347:22:22"
},
"payable": false,
"returnParameters": {
"id": 8989,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 8988,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 8999,
"src": "393:7:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 8987,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "393:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "392:9:22"
},
"scope": 9044,
"src": "335:265:22",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 9018,
"nodeType": "Block",
"src": "671:43:22",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 9011,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 9009,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9003,
"src": "684:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<=",
"rightExpression": {
"argumentTypes": null,
"id": 9010,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9001,
"src": "689:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "684:6:22",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 9008,
"name": "assert",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9169,
"src": "677:6:22",
"typeDescriptions": {
"typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 9012,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "677:14:22",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 9013,
"nodeType": "ExpressionStatement",
"src": "677:14:22"
},
{
"expression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 9016,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 9014,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9001,
"src": "704:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "-",
"rightExpression": {
"argumentTypes": null,
"id": 9015,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9003,
"src": "708:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "704:5:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 9007,
"id": 9017,
"nodeType": "Return",
"src": "697:12:22"
}
]
},
"documentation": null,
"id": 9019,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "sub",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 9004,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 9001,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 9019,
"src": "617:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9000,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "617:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 9003,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 9019,
"src": "628:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9002,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "628:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "616:22:22"
},
"payable": false,
"returnParameters": {
"id": 9007,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 9006,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 9019,
"src": "662:7:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9005,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "662:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "661:9:22"
},
"scope": 9044,
"src": "604:110:22",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 9042,
"nodeType": "Block",
"src": "785:62:22",
"statements": [
{
"assignments": [
9029
],
"declarations": [
{
"constant": false,
"id": 9029,
"name": "c",
"nodeType": "VariableDeclaration",
"scope": 9043,
"src": "791:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9028,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "791:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 9033,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 9032,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 9030,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9021,
"src": "803:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"id": 9031,
"name": "b",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9023,
"src": "807:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "803:5:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "791:17:22"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 9037,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 9035,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9029,
"src": "821:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"argumentTypes": null,
"id": 9036,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9021,
"src": "826:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "821:6:22",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 9034,
"name": "assert",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9169,
"src": "814:6:22",
"typeDescriptions": {
"typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 9038,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "814:14:22",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 9039,
"nodeType": "ExpressionStatement",
"src": "814:14:22"
},
{
"expression": {
"argumentTypes": null,
"id": 9040,
"name": "c",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 9029,
"src": "841:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 9027,
"id": 9041,
"nodeType": "Return",
"src": "834:8:22"
}
]
},
"documentation": null,
"id": 9043,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "add",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 9024,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 9021,
"name": "a",
"nodeType": "VariableDeclaration",
"scope": 9043,
"src": "731:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9020,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "731:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 9023,
"name": "b",
"nodeType": "VariableDeclaration",
"scope": 9043,
"src": "742:9:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9022,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "742:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "730:22:22"
},
"payable": false,
"returnParameters": {
"id": 9027,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 9026,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 9043,
"src": "776:7:22",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 9025,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "776:7:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "775:9:22"
},
"scope": 9044,
"src": "718:129:22",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
}
],
"scope": 9045,
"src": "126:723:22"
}
],
"src": "0:850:22"
},
"legacyAST": {
"absolutePath": "@realitio/realitio-contracts/truffle/contracts/RealitioSafeMath256.sol",
"exportedSymbols": {
"RealitioSafeMath256": [
9044
]
},
"id": 9045,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 8948,
"literals": [
"solidity",
"0.4",
".25"
],
"nodeType": "PragmaDirective",
"src": "0:23:22"
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "library",
"documentation": "@title ReailtioSafeMath256\n@dev Math operations with safety checks that throw on error",
"fullyImplemented": true,
"id": 9044,
"linearizedBaseContracts": [
9044
],
"name": "RealitioSafeMath256",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 8980,
"nodeType": "Block",
"src": "225:106:22",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 8959,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 8957,
"name": "a",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8950,
"src": "235:1:22",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"node