UNPKG

arc_dx

Version:

A platform for building DAOs

1,170 lines 105 kB
{ "contractName": "BasicToken", "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "name": "from", "type": "address" }, { "indexed": true, "name": "to", "type": "address" }, { "indexed": false, "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "constant": true, "inputs": [], "name": "totalSupply", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" }, { "constant": false, "inputs": [ { "name": "_to", "type": "address" }, { "name": "_value", "type": "uint256" } ], "name": "transfer", "outputs": [ { "name": "", "type": "bool" } ], "payable": false, "stateMutability": "nonpayable", "type": "function" }, { "constant": true, "inputs": [ { "name": "_owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b5061027a806100206000396000f3006080604052600436106100565763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166318160ddd811461005b57806370a0823114610082578063a9059cbb146100b0575b600080fd5b34801561006757600080fd5b506100706100f5565b60408051918252519081900360200190f35b34801561008e57600080fd5b5061007073ffffffffffffffffffffffffffffffffffffffff600435166100fb565b3480156100bc57600080fd5b506100e173ffffffffffffffffffffffffffffffffffffffff60043516602435610123565b604080519115158252519081900360200190f35b60015490565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b3360009081526020819052604081205482111561013f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8316151561016157600080fd5b33600090815260208190526040902054610181908363ffffffff61022916565b336000908152602081905260408082209290925573ffffffffffffffffffffffffffffffffffffffff8516815220546101c0908363ffffffff61023b16565b73ffffffffffffffffffffffffffffffffffffffff8416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b60008282111561023557fe5b50900390565b8181018281101561024857fe5b929150505600a165627a7a72305820155f7272e9b2f565eb4163a2a453ae07fd435375c564669ac7b086b7c1b4203e0029", "deployedBytecode": "0x6080604052600436106100565763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166318160ddd811461005b57806370a0823114610082578063a9059cbb146100b0575b600080fd5b34801561006757600080fd5b506100706100f5565b60408051918252519081900360200190f35b34801561008e57600080fd5b5061007073ffffffffffffffffffffffffffffffffffffffff600435166100fb565b3480156100bc57600080fd5b506100e173ffffffffffffffffffffffffffffffffffffffff60043516602435610123565b604080519115158252519081900360200190f35b60015490565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b3360009081526020819052604081205482111561013f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8316151561016157600080fd5b33600090815260208190526040902054610181908363ffffffff61022916565b336000908152602081905260408082209290925573ffffffffffffffffffffffffffffffffffffffff8516815220546101c0908363ffffffff61023b16565b73ffffffffffffffffffffffffffffffffffffffff8416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b60008282111561023557fe5b50900390565b8181018281101561024857fe5b929150505600a165627a7a72305820155f7272e9b2f565eb4163a2a453ae07fd435375c564669ac7b086b7c1b4203e0029", "sourceMap": "180:1071:56:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;180:1071:56;;;;;;;", "deployedSourceMap": "180:1071:56:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;389:83;;8:9:-1;5:2;;;30:1;27;20:12;5:2;389:83:56;;;;;;;;;;;;;;;;;;;;1149:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1149:99:56;;;;;;;626:321;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;626:321:56;;;;;;;;;;;;;;;;;;;;;;;;;;;389:83;455:12;;389:83;:::o;1149:99::-;1227:16;;1205:7;1227:16;;;;;;;;;;;;1149:99::o;626:321::-;728:10;689:4;719:20;;;;;;;;;;;709:30;;;701:39;;;;;;754:17;;;;;746:26;;;;;;811:10;802:8;:20;;;;;;;;;;;:32;;827:6;802:32;:24;:32;:::i;:::-;788:10;779:8;:20;;;;;;;;;;;:55;;;;:20;856:13;;;;;;:25;;874:6;856:25;:17;:25;:::i;:::-;840:13;;;:8;:13;;;;;;;;;;;;:41;;;;892:33;;;;;;;840:13;;901:10;;892:33;;;;;;;;;;-1:-1:-1;938:4:56;626:321;;;;:::o;1060:116:54:-;1120:7;1142:8;;;;1135:16;;;;-1:-1:-1;1164:7:54;;;1060:116::o;1238:128::-;1319:7;;;1339;;;;1332:15;;;;1238:128;;;;:::o", "source": "pragma solidity ^0.4.24;\n\n\nimport \"./ERC20Basic.sol\";\nimport \"../../math/SafeMath.sol\";\n\n\n/**\n * @title Basic token\n * @dev Basic version of StandardToken, with no allowances.\n */\ncontract BasicToken is ERC20Basic {\n using SafeMath for uint256;\n\n mapping(address => uint256) internal balances;\n\n uint256 internal totalSupply_;\n\n /**\n * @dev Total number of tokens in existence\n */\n function totalSupply() public view returns (uint256) {\n return totalSupply_;\n }\n\n /**\n * @dev Transfer token for a specified address\n * @param _to The address to transfer to.\n * @param _value The amount to be transferred.\n */\n function transfer(address _to, uint256 _value) public returns (bool) {\n require(_value <= balances[msg.sender]);\n require(_to != address(0));\n\n balances[msg.sender] = balances[msg.sender].sub(_value);\n balances[_to] = balances[_to].add(_value);\n emit Transfer(msg.sender, _to, _value);\n return true;\n }\n\n /**\n * @dev Gets the balance of the specified address.\n * @param _owner The address to query the the balance of.\n * @return An uint256 representing the amount owned by the passed address.\n */\n function balanceOf(address _owner) public view returns (uint256) {\n return balances[_owner];\n }\n\n}\n", "sourcePath": "openzeppelin-solidity/contracts/token/ERC20/BasicToken.sol", "ast": { "absolutePath": "openzeppelin-solidity/contracts/token/ERC20/BasicToken.sol", "exportedSymbols": { "BasicToken": [ 20973 ] }, "id": 20974, "nodeType": "SourceUnit", "nodes": [ { "id": 20879, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:56" }, { "absolutePath": "openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol", "file": "./ERC20Basic.sol", "id": 20880, "nodeType": "ImportDirective", "scope": 20974, "sourceUnit": 21120, "src": "27:26:56", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "openzeppelin-solidity/contracts/math/SafeMath.sol", "file": "../../math/SafeMath.sol", "id": 20881, "nodeType": "ImportDirective", "scope": 20974, "sourceUnit": 20792, "src": "54:33:56", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 20882, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 21119, "src": "203:10:56", "typeDescriptions": { "typeIdentifier": "t_contract$_ERC20Basic_$21119", "typeString": "contract ERC20Basic" } }, "id": 20883, "nodeType": "InheritanceSpecifier", "src": "203:10:56" } ], "contractDependencies": [ 21119 ], "contractKind": "contract", "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", "fullyImplemented": true, "id": 20973, "linearizedBaseContracts": [ 20973, 21119 ], "name": "BasicToken", "nodeType": "ContractDefinition", "nodes": [ { "id": 20886, "libraryName": { "contractScope": null, "id": 20884, "name": "SafeMath", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 20791, "src": "224:8:56", "typeDescriptions": { "typeIdentifier": "t_contract$_SafeMath_$20791", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", "src": "218:27:56", "typeName": { "id": 20885, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "237:7:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } }, { "constant": false, "id": 20890, "name": "balances", "nodeType": "VariableDeclaration", "scope": 20973, "src": "249:45:56", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "typeName": { "id": 20889, "keyType": { "id": 20887, "name": "address", "nodeType": "ElementaryTypeName", "src": "257:7:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", "src": "249:27:56", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { "id": 20888, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "268:7:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 20892, "name": "totalSupply_", "nodeType": "VariableDeclaration", "scope": 20973, "src": "299:29:56", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 20891, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "299:7:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "body": { "id": 20899, "nodeType": "Block", "src": "442:30:56", "statements": [ { "expression": { "argumentTypes": null, "id": 20897, "name": "totalSupply_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20892, "src": "455:12:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 20896, "id": 20898, "nodeType": "Return", "src": "448:19:56" } ] }, "documentation": "@dev Total number of tokens in existence", "id": 20900, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "totalSupply", "nodeType": "FunctionDefinition", "parameters": { "id": 20893, "nodeType": "ParameterList", "parameters": [], "src": "409:2:56" }, "payable": false, "returnParameters": { "id": 20896, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 20895, "name": "", "nodeType": "VariableDeclaration", "scope": 20900, "src": "433:7:56", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 20894, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "433:7:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "432:9:56" }, "scope": 20973, "src": "389:83:56", "stateMutability": "view", "superFunction": 21094, "visibility": "public" }, { "body": { "id": 20959, "nodeType": "Block", "src": "695:252:56", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 20915, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, "id": 20910, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20904, "src": "709:6:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "id": 20911, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20890, "src": "719:8:56", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, "id": 20914, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 20912, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 21549, "src": "728:3:56", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 20913, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, "src": "728:10:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "719:20:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "709:30:56", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 20909, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ 21552, 21553 ], "referencedDeclaration": 21552, "src": "701:7:56", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 20916, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "701:39:56", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 20917, "nodeType": "ExpressionStatement", "src": "701:39:56" }, { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 20923, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, "id": 20919, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20902, "src": "754:3:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "30", "id": 20921, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "769:1:56", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 20920, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "761:7:56", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, "id": 20922, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "761:10:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "754:17:56", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 20918, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ 21552, 21553 ], "referencedDeclaration": 21552, "src": "746:7:56", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 20924, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "746:26:56", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 20925, "nodeType": "ExpressionStatement", "src": "746:26:56" }, { "expression": { "argumentTypes": null, "id": 20937, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "id": 20926, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20890, "src": "779:8:56", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, "id": 20929, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 20927, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 21549, "src": "788:3:56", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 20928, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, "src": "788:10:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", "src": "779:20:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 20935, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20904, "src": "827:6:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "id": 20930, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20890, "src": "802:8:56", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, "id": 20933, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 20931, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 21549, "src": "811:3:56", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 20932, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, "src": "811:10:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "802:20:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 20934, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", "referencedDeclaration": 20766, "src": "802:24:56", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 20936, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "802:32:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "779:55:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 20938, "nodeType": "ExpressionStatement", "src": "779:55:56" }, { "expression": { "argumentTypes": null, "id": 20948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "id": 20939, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20890, "src": "840:8:56", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, "id": 20941, "indexExpression": { "argumentTypes": null, "id": 20940, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20902, "src": "849:3:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", "src": "840:13:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "id": 20946, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20904, "src": "874:6:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "id": 20942, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20890, "src": "856:8:56", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, "id": 20944, "indexExpression": { "argumentTypes": null, "id": 20943, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20902, "src": "865:3:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "856:13:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 20945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 20790, "src": "856:17:56", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, "id": 20947, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "856:25:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "840:41:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 20949, "nodeType": "ExpressionStatement", "src": "840:41:56" }, { "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 20951, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 21549, "src": "901:3:56", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 20952, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, "src": "901:10:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "argumentTypes": null, "id": 20953, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20902, "src": "913:3:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "argumentTypes": null, "id": 20954, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 20904, "src": "918:6:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 20950, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 21118, "src": "892:8:56", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, "id": 20955, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "892:33:56", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 20956, "nodeType": "EmitStatement", "src": "887:38:56" }, { "expression": { "argumentTypes": null, "hexValue": "74727565", "id": 20957, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "938:4:56", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "functionReturnParameters": 20908, "id": 20958, "nodeType": "Return", "src": "931:11:56" } ] }, "documentation": "@dev Transfer token for a specified address\n@param _to The address to transfer to.\n@param _value The amount to be transferred.", "id": 20960, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { "id": 20905, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 20902, "name": "_to", "nodeType": "VariableDeclaration", "scope": 20960, "src": "644:11:56", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 20901, "name": "address", "nodeType": "ElementaryTypeName", "src": "644:7:56", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 20904, "name": "_value", "nodeType": "VariableDeclaration", "scope": 20960, "src": "657:14:56", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 20903, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "657:7:56", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "643:29:56" }, "payable": false, "returnParameters": { "id": 20908, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 20907, "name": "", "nodeType": "VariableDeclaration", "scope": 20960, "src": "689:4:56", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 20906, "name": "bool", "nodeType": "Elementa