{ "contractName": "Ownable", "abi": [ { "constant": true, "inputs": [], "name": "owner", "outputs": [ { "name": "", "type": "address" } ], "payable": false, "stateMutability": "view", "type": "function" }, { "constant": false, "inputs": [ { "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "payable": false, "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "name": "previousOwner", "type": "address" }, { "indexed": true, "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" } ], "bytecode": "0x6060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102858061005e6000396000f30060606040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a6575b600080fd5b341561005c57600080fd5b6100646100df565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156100b157600080fd5b6100dd600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610104565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561015f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561019b57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582014dad562cecef1a4eb92770ceb2274c070c776ee00510869af5dd070d40bda9a0029", "deployedBytecode": "0x60606040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a6575b600080fd5b341561005c57600080fd5b6100646100df565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156100b157600080fd5b6100dd600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610104565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561015f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561019b57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582014dad562cecef1a4eb92770ceb2274c070c776ee00510869af5dd070d40bda9a0029", "sourceMap": "217:782:2:-;;;469:48;;;;;;;;502:10;494:5;;:18;;;;;;;;;;;;;;;;;;217:782;;;;;;", "deployedSourceMap": "217:782:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20;;;;;;;;;;;;;:::o;827:169::-;647:5;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;923:1;903:22;;:8;:22;;;;895:31;;;;;;;;960:8;932:37;;953:5;;;;;;;;;;;932:37;;;;;;;;;;;;983:8;975:5;;:16;;;;;;;;;;;;;;;;;;827:169;:::o", "source": "pragma solidity ^0.4.11;\n\n\n/**\n * @title Ownable\n * @dev The Ownable contract has an owner address, and provides basic authorization control\n * functions, this simplifies the implementation of \"user permissions\".\n */\ncontract Ownable {\n address public owner;\n\n\n event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n\n /**\n * @dev The Ownable constructor sets the original `owner` of the contract to the sender\n * account.\n */\n function Ownable() {\n owner = msg.sender;\n }\n\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner() {\n require(msg.sender == owner);\n _;\n }\n\n\n /**\n * @dev Allows the current owner to transfer control of the contract to a newOwner.\n * @param newOwner The address to transfer ownership to.\n */\n function transferOwnership(address newOwner) onlyOwner public {\n require(newOwner != address(0));\n OwnershipTransferred(owner, newOwner);\n owner = newOwner;\n }\n\n}\n", "sourcePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "ast": { "attributes": { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "exportedSymbols": { "Ownable": [ 488 ] } }, "children": [ { "attributes": { "literals": [ "solidity", "^", "0.4", ".11" ] }, "id": 434, "name": "PragmaDirective", "src": "0:24:2" }, { "attributes": { "baseContracts": [ null ], "contractDependencies": [ null ], "contractKind": "contract", "documentation": "@title Ownable\n@dev The Ownable contract has an owner address, and provides basic authorization control\nfunctions, this simplifies the implementation of \"user permissions\".", "fullyImplemented": true, "linearizedBaseContracts": [ 488 ], "name": "Ownable", "scope": 489 }, "children": [ { "attributes": { "constant": false, "name": "owner", "scope": 488, "stateVariable": true, "storageLocation": "default", "type": "address", "value": null, "visibility": "public" }, "children": [ { "attributes": { "name": "address", "type": "address" }, "id": 435, "name": "ElementaryTypeName", "src": "238:7:2" } ], "id": 436, "name": "VariableDeclaration", "src": "238:20:2" }, { "attributes": { "anonymous": false, "name": "OwnershipTransferred" }, "children": [ { "children": [ { "attributes": { "constant": false, "indexed": true, "name": "previousOwner", "scope": 442, "stateVariable": false, "storageLocation": "default", "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "type": "address" }, "id": 437, "name": "ElementaryTypeName", "src": "291:7:2" } ], "id": 438, "name": "VariableDeclaration", "src": "291:29:2" }, { "attributes": { "constant": false, "indexed": true, "name": "newOwner", "scope": 442, "stateVariable": false, "storageLocation": "default", "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "type": "address" }, "id": 439, "name": "ElementaryTypeName", "src": "322:7:2" } ], "id": 440, "name": "VariableDeclaration", "src": "322:24:2" } ], "id": 441, "name": "ParameterList", "src": "290:57:2" } ], "id": 442, "name": "EventDefinition", "src": "264:84:2" }, { "attributes": { "constant": false, "implemented": true, "isConstructor": true, "modifiers": [ null ], "name": "Ownable", "payable": false, "scope": 488, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, "children": [ { "attributes": { "parameters": [ null ] }, "children": [], "id": 443, "name": "ParameterList", "src": "485:2:2" }, { "attributes": { "parameters": [ null ] }, "children": [], "id": 444, "name": "ParameterList", "src": "488:0:2" }, { "children": [ { "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "operator": "=", "type": "address" }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 436, "type": "address", "value": "owner" }, "id": 445, "name": "Identifier", "src": "494:5:2" }, { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "member_name": "sender", "referencedDeclaration": null, "type": "address" }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 606, "type": "msg", "value": "msg" }, "id": 446, "name": "Identifier", "src": "502:3:2" } ], "id": 447, "name": "MemberAccess", "src": "502:10:2" } ], "id": 448, "name": "Assignment", "src": "494:18:2" } ], "id": 449, "name": "ExpressionStatement", "src": "494:18:2" } ], "id": 450, "name": "Block", "src": "488:29:2" } ], "id": 451, "name": "FunctionDefinition", "src": "469:48:2" }, { "attributes": { "name": "onlyOwner", "visibility": "internal" }, "children": [ { "attributes": { "parameters": [ null ] }, "children": [], "id": 452, "name": "ParameterList", "src": "616:2: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_bool", "typeString": "bool" } ], "overloadedDeclarations": [ null ], "referencedDeclaration": 609, "type": "function (bool) pure", "value": "require" }, "id": 453, "name": "Identifier", "src": "625:7:2" }, { "attributes": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "operator": "==", "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "member_name": "sender", "referencedDeclaration": null, "type": "address" }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 606, "type": "msg", "value": "msg" }, "id": 454, "name": "Identifier", "src": "633:3:2" } ], "id": 455, "name": "MemberAccess", "src": "633:10:2" }, { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 436, "type": "address", "value": "owner" }, "id": 456, "name": "Identifier", "src": "647:5:2" } ], "id": 457, "name": "BinaryOperation", "src": "633:19:2" } ], "id": 458, "name": "FunctionCall", "src": "625:28:2" } ], "id": 459, "name": "ExpressionStatement", "src": "625:28:2" }, { "id": 460, "name": "PlaceholderStatement", "src": "659:1:2" } ], "id": 461, "name": "Block", "src": "619:46:2" } ], "id": 462, "name": "ModifierDefinition", "src": "598:67:2" }, { "attributes": { "constant": false, "implemented": true, "isConstructor": false, "name": "transferOwnership", "payable": false, "scope": 488, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, "children": [ { "children": [ { "attributes": { "constant": false, "name": "newOwner", "scope": 487, "stateVariable": false, "storageLocation": "default", "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "type": "address" }, "id": 463, "name": "ElementaryTypeName", "src": "854:7:2" } ], "id": 464, "name": "VariableDeclaration", "src": "854:16:2" } ], "id": 465, "name": "ParameterList", "src": "853:18:2" }, { "attributes": { "parameters": [ null ] }, "children": [], "id": 468, "name": "ParameterList", "src": "889:0:2" }, { "attributes": { "arguments": [ null ] }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 462, "type": "modifier ()", "value": "onlyOwner" }, "id": 466, "name": "Identifier", "src": "872:9:2" } ], "id": 467, "name": "ModifierInvocation", "src": "872:9: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_bool", "typeString": "bool" } ], "overloadedDeclarations": [ null ], "referencedDeclaration": 609, "type": "function (bool) pure", "value": "require" }, "id": 469, "name": "Identifier", "src": "895:7:2" }, { "attributes": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "operator": "!=", "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 464, "type": "address", "value": "newOwner" }, "id": 470, "name": "Identifier", "src": "903:8:2" }, { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": true, "isStructConstructorCall": false, "lValueRequested": false, "names": [ null ], "type": "address", "type_conversion": true }, "children": [ { "attributes": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "type": "type(address)", "value": "address" }, "id": 471, "name": "ElementaryTypeNameExpression", "src": "915:7:2" }, { "attributes": { "argumentTypes": null, "hexvalue": "30", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, "token": "number", "type": "int_const 0", "value": "0" }, "id": 472, "name": "Literal", "src": "923:1:2" } ], "id": 473, "name": "FunctionCall", "src": "915:10:2" } ], "id": 474, "name": "BinaryOperation", "src": "903:22:2" } ], "id": 475, "name": "FunctionCall", "src": "895:31:2" } ], "id": 476, "name": "ExpressionStatement", "src": "895:31:2" }, { "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_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "overloadedDeclarations": [ null ], "referencedDeclaration": 442, "type": "function (address,address)", "value": "OwnershipTransferred" }, "id": 477, "name": "Identifier", "src": "932:20:2" }, { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 436, "type": "address", "value": "owner" }, "id": 478, "name": "Identifier", "src": "953:5:2" }, { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 464, "type": "address", "value": "newOwner" }, "id": 479, "name": "Identifier", "src": "960:8:2" } ], "id": 480, "name": "FunctionCall", "src": "932:37:2" } ], "id": 481, "name": "ExpressionStatement", "src": "932:37:2" }, { "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "operator": "=", "type": "address" }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 436, "type": "address", "value": "owner" }, "id": 482, "name": "Identifier", "src": "975:5:2" }, { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": 464, "type": "address", "value": "newOwner" }, "id": 483, "name": "Identifier", "src": "983:8:2" } ], "id": 484, "name": "Assignment", "src": "975:16:2" } ], "id": 485, "name": "ExpressionStatement", "src": "975:16:2" } ], "id": 486, "name": "Block", "src": "889:107:2" } ], "id": 487, "name": "FunctionDefinition", "src": "827:169:2" } ], "id": 488, "name": "ContractDefinition", "src": "217:782:2" } ], "id": 489, "name": "SourceUnit", "src": "0:1000:2" }, "compiler": { "name": "solc", "version": "0.4.18+commit.9cf6e910.Emscripten.clang" }, "networks": {}, "schemaVersion": "1.0.1", "updatedAt": "2017-11-10T02:14:36.615Z" }