From f2c28e26e1cb582bcdd0ead1ded915be2890c599 Mon Sep 17 00:00:00 2001 From: Matheus Faria de Alencar Date: Sat, 7 Jul 2018 13:37:07 -0300 Subject: [PATCH 1/4] fix: Compilation warnings --- build/contracts/Avatar.json | 5074 +------------ build/contracts/BasicToken.json | 2103 +----- build/contracts/Debug.json | 773 +- build/contracts/ERC20.json | 1238 +--- build/contracts/ERC20Basic.json | 807 +-- build/contracts/Likes.json | 7795 +------------------- build/contracts/Migrations.json | 1381 +--- build/contracts/Ownable.json | 1460 +--- build/contracts/PTIDistributor.json | 6757 +---------------- build/contracts/ParatiiToken.json | 1316 +--- build/contracts/Registry.json | 5797 +-------------- build/contracts/SafeMath.json | 2440 +------ build/contracts/Sales.json | 4881 +------------ build/contracts/SendEther.json | 1272 +--- build/contracts/StandardToken.json | 6298 +--------------- build/contracts/Store.json | 4545 +----------- build/contracts/TcrPlaceholder.json | 9941 +------------------------- build/contracts/Users.json | 3762 +--------- build/contracts/Videos.json | 7468 +------------------ build/contracts/Views.json | 4664 +----------- build/contracts/Vouchers.json | 5791 +-------------- contracts/Migrations.sol | 30 +- contracts/paratii/Likes.sol | 10 +- contracts/paratii/PTIDistributor.sol | 14 +- contracts/paratii/Registry.sol | 18 +- contracts/paratii/Sales.sol | 8 +- contracts/paratii/Store.sol | 13 +- contracts/paratii/TcrPlaceholder.sol | 14 +- contracts/paratii/Videos.sol | 10 +- contracts/paratii/Views.sol | 8 +- contracts/paratii/Vouchers.sol | 2 +- yarn.lock | 3109 ++------ 32 files changed, 634 insertions(+), 88165 deletions(-) diff --git a/build/contracts/Avatar.json b/build/contracts/Avatar.json index 92fb69a..6f03193 100644 --- a/build/contracts/Avatar.json +++ b/build/contracts/Avatar.json @@ -1,5073 +1 @@ -{ - "contractName": "Avatar", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "uint256" - } - ], - "name": "whitelist", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "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": [ - { - "name": "_registry", - "type": "address" - } - ], - "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" - }, - { - "constant": false, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "addToWhitelist", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "removeFromWhitelist", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "isOnWhiteList", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_from", - "type": "address" - }, - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50604051602080610ca483398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ba0806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820023266a7fe5845a61e28bac99dee4c7461a49f52c88aeb979fd974f8433f7d4b0029", - "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820023266a7fe5845a61e28bac99dee4c7461a49f52c88aeb979fd974f8433f7d4b0029", - "sourceMap": "204:1646:2:-;;;394:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;394:104:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;454:9:2;443:8;;:20;;;;;;;;;;;;;;;;;;481:10;473:5;;:18;;;;;;;;;;;;;;;;;;394:104;204:1646;;;;;;", - "deployedSourceMap": "204:1646:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1601:247;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1601:247:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;237:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;237:24:2;;;;;;;;;;;;;;;;;;;;;;;;;;;268:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;268:26:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1106:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1106:232:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;504:596:2;;8:9:-1;5:2;;;30:1;27;20:12;5:2;504:596:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;1344:251;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1344:251:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1601:247:2;1697:4;1715:18;344:25;358:10;344:13;:25::i;:::-;336:34;;;;;;;;1749:8;;;;;;;;;;;:20;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1749:36:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1749:36:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1749:36:2;;;;;;;;;;;;;;;;1715:71;;1803:5;:18;;;1822:5;1829:3;1834:6;1803:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1803:38:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1803:38:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1803:38:2;;;;;;;;;;;;;;;;1796:45;;1601:247;;;;;;:::o;237:24::-;;;;;;;;;;;;;:::o;268:26::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1106:232::-;1185:6;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1194:1:2;1185:10;;1180:152;1201:9;:16;;;;1197:1;:20;1180:152;;;1258:8;1242:24;;:9;1252:1;1242:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;1238:84;;;1293:9;1303:1;1293:12;;;;;;;;;;;;;;;;;;1286:19;;;;;;;;;;;1238:84;1219:3;;;;;;;1180:152;;;1106:232;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;504:596:2:-;669:14;717:6;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;686:9:2;:16;;;;669:33;;726:1;717:10;;712:228;733:9;:16;;;;729:1;:20;712:228;;;790:8;774:24;;:9;784:1;774:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;770:69;;;818:7;;770:69;880:1;856:26;;:9;866:1;856:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:26;;;852:78;;;914:1;902:13;;852:78;751:3;;;;;;;712:228;;;966:9;:16;;;;953:9;:29;949:145;;;997:9;1012:8;997:24;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;997:24:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;949:145;;;1075:8;1052:9;1062;1052:20;;;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;949:145;659:1:16;504:596:2;;;:::o;1344:251::-;1409:4;1430:6;1439:1;1430:10;;1425:142;1446:9;:16;;;;1442:1;:20;1425:142;;;1503:8;1487:24;;:9;1497:1;1487:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;1483:74;;;1538:4;1531:11;;;;1483:74;1464:3;;;;;;;1425:142;;;1583:5;1576:12;;1344:251;;;;;:::o;827:169:16:-;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.18;\nimport \"./Registry.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\n/*\n * @dev A contract that holds PTI for the paratii DAO\n *\n */\n\ncontract Avatar is Ownable {\n Registry public registry;\n\n address[] public whitelist;\n\n modifier onlyWhitelist() {\n require(isOnWhiteList(msg.sender));\n _;\n }\n\n constructor(Registry _registry) public {\n registry = _registry;\n owner = msg.sender;\n }\n\n function addToWhitelist(address _address) public onlyOwner {\n // check if the address is already known, and if there is a free space in the whitelist\n uint freeSpace = whitelist.length;\n for (uint i = 0; i < whitelist.length; i++) {\n if (whitelist[i] == _address) {\n return;\n }\n if (whitelist[i] == address(0)) {\n freeSpace = i;\n }\n }\n if (freeSpace == whitelist.length){\n whitelist.push(_address);\n } else {\n whitelist[freeSpace] = _address;\n }\n }\n\n function removeFromWhitelist(address _address) public onlyOwner {\n for (uint i = 0; i < whitelist.length; i++) {\n if (whitelist[i] == _address) {\n delete whitelist[i]; \n }\n }\n }\n\n function isOnWhiteList(address _address) public constant returns(bool) {\n for (uint i = 0; i < whitelist.length; i++) {\n if (whitelist[i] == _address) {\n return true;\n }\n }\n return false;\n }\n\n function transferFrom(address _from, address _to, uint256 _value) public onlyWhitelist returns (bool) {\n ParatiiToken token = ParatiiToken(registry.getContract(\"ParatiiToken\"));\n return token.transferFrom(_from, _to, _value);\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", - "exportedSymbols": { - "Avatar": [ - 287 - ] - }, - "id": 288, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 89, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:2" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 90, - "nodeType": "ImportDirective", - "scope": 288, - "sourceUnit": 1097, - "src": "25:24:2", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 91, - "nodeType": "ImportDirective", - "scope": 288, - "sourceUnit": 872, - "src": "50:28:2", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 92, - "nodeType": "ImportDirective", - "scope": 288, - "sourceUnit": 2807, - "src": "79:59:2", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 93, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "223:7:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 94, - "nodeType": "InheritanceSpecifier", - "src": "223:7:2" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 287, - "linearizedBaseContracts": [ - 287, - 2806 - ], - "name": "Avatar", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 96, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 287, - "src": "237:24:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 95, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "237:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "whitelist", - "nodeType": "VariableDeclaration", - "scope": 287, - "src": "268:26:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "268:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "268:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 109, - "nodeType": "Block", - "src": "326:62:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 103, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "358:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 104, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "358:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 102, - "name": "isOnWhiteList", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "344:13:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "344:25:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 101, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "336:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 106, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "336:34:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 107, - "nodeType": "ExpressionStatement", - "src": "336:34:2" - }, - { - "id": 108, - "nodeType": "PlaceholderStatement", - "src": "380:1:2" - } - ] - }, - "documentation": null, - "id": 110, - "name": "onlyWhitelist", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 100, - "nodeType": "ParameterList", - "parameters": [], - "src": "323:2:2" - }, - "src": "301:87:2", - "visibility": "internal" - }, - { - "body": { - "id": 124, - "nodeType": "Block", - "src": "433:65:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 115, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "443:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 116, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "454:9:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "443:20:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 118, - "nodeType": "ExpressionStatement", - "src": "443:20:2" - }, - { - "expression": { - "argumentTypes": null, - "id": 122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 119, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "473:5:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 120, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "481:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "481:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "473:18:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 123, - "nodeType": "ExpressionStatement", - "src": "473:18:2" - } - ] - }, - "documentation": null, - "id": 125, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 113, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 112, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 125, - "src": "406:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 111, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "406:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "405:20:2" - }, - "payable": false, - "returnParameters": { - "id": 114, - "nodeType": "ParameterList", - "parameters": [], - "src": "433:0:2" - }, - "scope": 287, - "src": "394:104:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 190, - "nodeType": "Block", - "src": "563:537:2", - "statements": [ - { - "assignments": [ - 133 - ], - "declarations": [ - { - "constant": false, - "id": 133, - "name": "freeSpace", - "nodeType": "VariableDeclaration", - "scope": 191, - "src": "669:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 132, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "669:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 136, - "initialValue": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 134, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "686:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 135, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "686:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "669:33:2" - }, - { - "body": { - "id": 169, - "nodeType": "Block", - "src": "756:184:2", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 148, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "774:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 150, - "indexExpression": { - "argumentTypes": null, - "id": 149, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "784:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "774:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 151, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "790:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "774:24:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 155, - "nodeType": "IfStatement", - "src": "770:69:2", - "trueBody": { - "id": 154, - "nodeType": "Block", - "src": "800:39:2", - "statements": [ - { - "expression": null, - "functionReturnParameters": 131, - "id": 153, - "nodeType": "Return", - "src": "818:7:2" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 156, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "856:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 158, - "indexExpression": { - "argumentTypes": null, - "id": 157, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "866:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "856:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 160, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "880:1:2", - "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": 159, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "872:7:2", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "872:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "856:26:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 168, - "nodeType": "IfStatement", - "src": "852:78:2", - "trueBody": { - "id": 167, - "nodeType": "Block", - "src": "884:46:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 163, - "name": "freeSpace", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 133, - "src": "902:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 164, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "914:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "902:13:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 166, - "nodeType": "ExpressionStatement", - "src": "902:13:2" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 141, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "729:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 142, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "733:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 143, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "733:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "729:20:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 170, - "initializationExpression": { - "assignments": [ - 138 - ], - "declarations": [ - { - "constant": false, - "id": 138, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 191, - "src": "717:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 137, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "717:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 140, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 139, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "726:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "717:10:2" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "751:3:2", - "subExpression": { - "argumentTypes": null, - "id": 145, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "751:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 147, - "nodeType": "ExpressionStatement", - "src": "751:3:2" - }, - "nodeType": "ForStatement", - "src": "712:228:2" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 171, - "name": "freeSpace", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 133, - "src": "953:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 172, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "966:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 173, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "966:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "953:29:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 188, - "nodeType": "Block", - "src": "1038:56:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 182, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1052:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 184, - "indexExpression": { - "argumentTypes": null, - "id": 183, - "name": "freeSpace", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 133, - "src": "1062:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1052:20:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 185, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "1075:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1052:31:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 187, - "nodeType": "ExpressionStatement", - "src": "1052:31:2" - } - ] - }, - "id": 189, - "nodeType": "IfStatement", - "src": "949:145:2", - "trueBody": { - "id": 181, - "nodeType": "Block", - "src": "983:49:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 178, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "1012:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "argumentTypes": null, - "id": 175, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "997:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 177, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "997:14:2", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) returns (uint256)" - } - }, - "id": 179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "997:24:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 180, - "nodeType": "ExpressionStatement", - "src": "997:24:2" - } - ] - } - } - ] - }, - "documentation": null, - "id": 191, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 130, - "modifierName": { - "argumentTypes": null, - "id": 129, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "553:9:2", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "553:9:2" - } - ], - "name": "addToWhitelist", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 128, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 127, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 191, - "src": "528:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "528:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "527:18:2" - }, - "payable": false, - "returnParameters": { - "id": 131, - "nodeType": "ParameterList", - "parameters": [], - "src": "563:0:2" - }, - "scope": 287, - "src": "504:596:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 223, - "nodeType": "Block", - "src": "1170:168:2", - "statements": [ - { - "body": { - "id": 221, - "nodeType": "Block", - "src": "1224:108:2", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 209, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1242:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 211, - "indexExpression": { - "argumentTypes": null, - "id": 210, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1252:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1242:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 212, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 193, - "src": "1258:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1242:24:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 220, - "nodeType": "IfStatement", - "src": "1238:84:2", - "trueBody": { - "id": 219, - "nodeType": "Block", - "src": "1268:54:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 217, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1286:19:2", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 214, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1293:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 216, - "indexExpression": { - "argumentTypes": null, - "id": 215, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1303:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1293:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 218, - "nodeType": "ExpressionStatement", - "src": "1286:19:2" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 202, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1197:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 203, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1201:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 204, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1201:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1197:20:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 222, - "initializationExpression": { - "assignments": [ - 199 - ], - "declarations": [ - { - "constant": false, - "id": 199, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "1185:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 198, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1185:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 201, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 200, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1194:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1185:10:2" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1219:3:2", - "subExpression": { - "argumentTypes": null, - "id": 206, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1219:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 208, - "nodeType": "ExpressionStatement", - "src": "1219:3:2" - }, - "nodeType": "ForStatement", - "src": "1180:152:2" - } - ] - }, - "documentation": null, - "id": 224, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 196, - "modifierName": { - "argumentTypes": null, - "id": 195, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1160:9:2", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1160:9:2" - } - ], - "name": "removeFromWhitelist", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 194, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 193, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "1135:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 192, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1135:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1134:18:2" - }, - "payable": false, - "returnParameters": { - "id": 197, - "nodeType": "ParameterList", - "parameters": [], - "src": "1170:0:2" - }, - "scope": 287, - "src": "1106:232:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 255, - "nodeType": "Block", - "src": "1415:180:2", - "statements": [ - { - "body": { - "id": 251, - "nodeType": "Block", - "src": "1469:98:2", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 242, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1487:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 244, - "indexExpression": { - "argumentTypes": null, - "id": 243, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1497:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1487:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 245, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "1503:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1487:24:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 250, - "nodeType": "IfStatement", - "src": "1483:74:2", - "trueBody": { - "id": 249, - "nodeType": "Block", - "src": "1513:44:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 247, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1538:4:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 230, - "id": 248, - "nodeType": "Return", - "src": "1531:11:2" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 235, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1442:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 236, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1446:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 237, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1446:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1442:20:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 252, - "initializationExpression": { - "assignments": [ - 232 - ], - "declarations": [ - { - "constant": false, - "id": 232, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1430:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 231, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1430:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 234, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 233, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1439:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1430:10:2" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1464:3:2", - "subExpression": { - "argumentTypes": null, - "id": 239, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1464:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 241, - "nodeType": "ExpressionStatement", - "src": "1464:3:2" - }, - "nodeType": "ForStatement", - "src": "1425:142:2" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 253, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1583:5:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 230, - "id": 254, - "nodeType": "Return", - "src": "1576:12:2" - } - ] - }, - "documentation": null, - "id": 256, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isOnWhiteList", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 227, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 226, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1367:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1367:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1366:18:2" - }, - "payable": false, - "returnParameters": { - "id": 230, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 229, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1409:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 228, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1409:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1408:6:2" - }, - "scope": 287, - "src": "1344:251:2", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 285, - "nodeType": "Block", - "src": "1705:143:2", - "statements": [ - { - "assignments": [ - 270 - ], - "declarations": [ - { - "constant": false, - "id": 270, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1715:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 269, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "1715:12:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 277, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", - "id": 274, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1770:14:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 272, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "1749:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 273, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1749:20:2", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1749:36:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 271, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1736:12:2", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 276, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1736:50:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1715:71:2" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 280, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 258, - "src": "1822:5:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 281, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 260, - "src": "1829:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 282, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "1834:6:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 278, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 270, - "src": "1803:5:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 279, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 3040, - "src": "1803:18:2", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 283, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1803:38:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 268, - "id": 284, - "nodeType": "Return", - "src": "1796:45:2" - } - ] - }, - "documentation": null, - "id": 286, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 265, - "modifierName": { - "argumentTypes": null, - "id": 264, - "name": "onlyWhitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 110, - "src": "1674:13:2", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1674:13:2" - } - ], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 263, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 258, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1623:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 257, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1623:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 260, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1638:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 259, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1638:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 262, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1651:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 261, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1651:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1622:44:2" - }, - "payable": false, - "returnParameters": { - "id": 268, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 267, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1697:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 266, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1697:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1696:6:2" - }, - "scope": 287, - "src": "1601:247:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 288, - "src": "204:1646:2" - } - ], - "src": "0:1851:2" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", - "exportedSymbols": { - "Avatar": [ - 287 - ] - }, - "id": 288, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 89, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:2" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 90, - "nodeType": "ImportDirective", - "scope": 288, - "sourceUnit": 1097, - "src": "25:24:2", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 91, - "nodeType": "ImportDirective", - "scope": 288, - "sourceUnit": 872, - "src": "50:28:2", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 92, - "nodeType": "ImportDirective", - "scope": 288, - "sourceUnit": 2807, - "src": "79:59:2", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 93, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "223:7:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 94, - "nodeType": "InheritanceSpecifier", - "src": "223:7:2" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 287, - "linearizedBaseContracts": [ - 287, - 2806 - ], - "name": "Avatar", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 96, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 287, - "src": "237:24:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 95, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "237:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "whitelist", - "nodeType": "VariableDeclaration", - "scope": 287, - "src": "268:26:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "268:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "268:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 109, - "nodeType": "Block", - "src": "326:62:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 103, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "358:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 104, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "358:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 102, - "name": "isOnWhiteList", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "344:13:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "344:25:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 101, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "336:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 106, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "336:34:2", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 107, - "nodeType": "ExpressionStatement", - "src": "336:34:2" - }, - { - "id": 108, - "nodeType": "PlaceholderStatement", - "src": "380:1:2" - } - ] - }, - "documentation": null, - "id": 110, - "name": "onlyWhitelist", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 100, - "nodeType": "ParameterList", - "parameters": [], - "src": "323:2:2" - }, - "src": "301:87:2", - "visibility": "internal" - }, - { - "body": { - "id": 124, - "nodeType": "Block", - "src": "433:65:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 115, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "443:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 116, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 112, - "src": "454:9:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "443:20:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 118, - "nodeType": "ExpressionStatement", - "src": "443:20:2" - }, - { - "expression": { - "argumentTypes": null, - "id": 122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 119, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "473:5:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 120, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "481:3:2", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "481:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "473:18:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 123, - "nodeType": "ExpressionStatement", - "src": "473:18:2" - } - ] - }, - "documentation": null, - "id": 125, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 113, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 112, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 125, - "src": "406:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 111, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "406:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "405:20:2" - }, - "payable": false, - "returnParameters": { - "id": 114, - "nodeType": "ParameterList", - "parameters": [], - "src": "433:0:2" - }, - "scope": 287, - "src": "394:104:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 190, - "nodeType": "Block", - "src": "563:537:2", - "statements": [ - { - "assignments": [ - 133 - ], - "declarations": [ - { - "constant": false, - "id": 133, - "name": "freeSpace", - "nodeType": "VariableDeclaration", - "scope": 191, - "src": "669:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 132, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "669:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 136, - "initialValue": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 134, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "686:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 135, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "686:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "669:33:2" - }, - { - "body": { - "id": 169, - "nodeType": "Block", - "src": "756:184:2", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 148, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "774:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 150, - "indexExpression": { - "argumentTypes": null, - "id": 149, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "784:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "774:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 151, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "790:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "774:24:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 155, - "nodeType": "IfStatement", - "src": "770:69:2", - "trueBody": { - "id": 154, - "nodeType": "Block", - "src": "800:39:2", - "statements": [ - { - "expression": null, - "functionReturnParameters": 131, - "id": 153, - "nodeType": "Return", - "src": "818:7:2" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 156, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "856:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 158, - "indexExpression": { - "argumentTypes": null, - "id": 157, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "866:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "856:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 160, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "880:1:2", - "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": 159, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "872:7:2", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "872:10:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "856:26:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 168, - "nodeType": "IfStatement", - "src": "852:78:2", - "trueBody": { - "id": 167, - "nodeType": "Block", - "src": "884:46:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 163, - "name": "freeSpace", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 133, - "src": "902:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 164, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "914:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "902:13:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 166, - "nodeType": "ExpressionStatement", - "src": "902:13:2" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 141, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "729:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 142, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "733:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 143, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "733:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "729:20:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 170, - "initializationExpression": { - "assignments": [ - 138 - ], - "declarations": [ - { - "constant": false, - "id": 138, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 191, - "src": "717:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 137, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "717:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 140, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 139, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "726:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "717:10:2" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "751:3:2", - "subExpression": { - "argumentTypes": null, - "id": 145, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "751:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 147, - "nodeType": "ExpressionStatement", - "src": "751:3:2" - }, - "nodeType": "ForStatement", - "src": "712:228:2" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 171, - "name": "freeSpace", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 133, - "src": "953:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 172, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "966:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 173, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "966:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "953:29:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 188, - "nodeType": "Block", - "src": "1038:56:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 182, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1052:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 184, - "indexExpression": { - "argumentTypes": null, - "id": 183, - "name": "freeSpace", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 133, - "src": "1062:9:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1052:20:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 185, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "1075:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1052:31:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 187, - "nodeType": "ExpressionStatement", - "src": "1052:31:2" - } - ] - }, - "id": 189, - "nodeType": "IfStatement", - "src": "949:145:2", - "trueBody": { - "id": 181, - "nodeType": "Block", - "src": "983:49:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 178, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "1012:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "argumentTypes": null, - "id": 175, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "997:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 177, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "push", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "997:14:2", - "typeDescriptions": { - "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) returns (uint256)" - } - }, - "id": 179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "997:24:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 180, - "nodeType": "ExpressionStatement", - "src": "997:24:2" - } - ] - } - } - ] - }, - "documentation": null, - "id": 191, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 130, - "modifierName": { - "argumentTypes": null, - "id": 129, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "553:9:2", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "553:9:2" - } - ], - "name": "addToWhitelist", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 128, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 127, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 191, - "src": "528:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "528:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "527:18:2" - }, - "payable": false, - "returnParameters": { - "id": 131, - "nodeType": "ParameterList", - "parameters": [], - "src": "563:0:2" - }, - "scope": 287, - "src": "504:596:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 223, - "nodeType": "Block", - "src": "1170:168:2", - "statements": [ - { - "body": { - "id": 221, - "nodeType": "Block", - "src": "1224:108:2", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 209, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1242:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 211, - "indexExpression": { - "argumentTypes": null, - "id": 210, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1252:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1242:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 212, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 193, - "src": "1258:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1242:24:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 220, - "nodeType": "IfStatement", - "src": "1238:84:2", - "trueBody": { - "id": 219, - "nodeType": "Block", - "src": "1268:54:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 217, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1286:19:2", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 214, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1293:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 216, - "indexExpression": { - "argumentTypes": null, - "id": 215, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1303:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1293:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 218, - "nodeType": "ExpressionStatement", - "src": "1286:19:2" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 202, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1197:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 203, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1201:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 204, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1201:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1197:20:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 222, - "initializationExpression": { - "assignments": [ - 199 - ], - "declarations": [ - { - "constant": false, - "id": 199, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "1185:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 198, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1185:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 201, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 200, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1194:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1185:10:2" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1219:3:2", - "subExpression": { - "argumentTypes": null, - "id": 206, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 199, - "src": "1219:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 208, - "nodeType": "ExpressionStatement", - "src": "1219:3:2" - }, - "nodeType": "ForStatement", - "src": "1180:152:2" - } - ] - }, - "documentation": null, - "id": 224, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 196, - "modifierName": { - "argumentTypes": null, - "id": 195, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1160:9:2", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1160:9:2" - } - ], - "name": "removeFromWhitelist", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 194, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 193, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "1135:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 192, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1135:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1134:18:2" - }, - "payable": false, - "returnParameters": { - "id": 197, - "nodeType": "ParameterList", - "parameters": [], - "src": "1170:0:2" - }, - "scope": 287, - "src": "1106:232:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 255, - "nodeType": "Block", - "src": "1415:180:2", - "statements": [ - { - "body": { - "id": 251, - "nodeType": "Block", - "src": "1469:98:2", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 242, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1487:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 244, - "indexExpression": { - "argumentTypes": null, - "id": 243, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1497:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1487:12:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 245, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "1503:8:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1487:24:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 250, - "nodeType": "IfStatement", - "src": "1483:74:2", - "trueBody": { - "id": 249, - "nodeType": "Block", - "src": "1513:44:2", - "statements": [ - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 247, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1538:4:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 230, - "id": 248, - "nodeType": "Return", - "src": "1531:11:2" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 235, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1442:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 236, - "name": "whitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1446:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" - } - }, - "id": 237, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1446:16:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1442:20:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 252, - "initializationExpression": { - "assignments": [ - 232 - ], - "declarations": [ - { - "constant": false, - "id": 232, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1430:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 231, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1430:4:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 234, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 233, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1439:1:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1430:10:2" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1464:3:2", - "subExpression": { - "argumentTypes": null, - "id": 239, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1464:1:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 241, - "nodeType": "ExpressionStatement", - "src": "1464:3:2" - }, - "nodeType": "ForStatement", - "src": "1425:142:2" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 253, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1583:5:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 230, - "id": 254, - "nodeType": "Return", - "src": "1576:12:2" - } - ] - }, - "documentation": null, - "id": 256, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isOnWhiteList", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 227, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 226, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1367:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1367:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1366:18:2" - }, - "payable": false, - "returnParameters": { - "id": 230, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 229, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1409:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 228, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1409:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1408:6:2" - }, - "scope": 287, - "src": "1344:251:2", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 285, - "nodeType": "Block", - "src": "1705:143:2", - "statements": [ - { - "assignments": [ - 270 - ], - "declarations": [ - { - "constant": false, - "id": 270, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1715:18:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 269, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "1715:12:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 277, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", - "id": 274, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1770:14:2", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 272, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "1749:8:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 273, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1749:20:2", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1749:36:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 271, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1736:12:2", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 276, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1736:50:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1715:71:2" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 280, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 258, - "src": "1822:5:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 281, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 260, - "src": "1829:3:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 282, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "1834:6:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 278, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 270, - "src": "1803:5:2", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 279, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 3040, - "src": "1803:18:2", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 283, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1803:38:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 268, - "id": 284, - "nodeType": "Return", - "src": "1796:45:2" - } - ] - }, - "documentation": null, - "id": 286, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 265, - "modifierName": { - "argumentTypes": null, - "id": 264, - "name": "onlyWhitelist", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 110, - "src": "1674:13:2", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1674:13:2" - } - ], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 263, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 258, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1623:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 257, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1623:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 260, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1638:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 259, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1638:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 262, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1651:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 261, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1651:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1622:44:2" - }, - "payable": false, - "returnParameters": { - "id": 268, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 267, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 286, - "src": "1697:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 266, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1697:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1696:6:2" - }, - "scope": 287, - "src": "1601:247:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 288, - "src": "204:1646:2" - } - ], - "src": "0:1851:2" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.668Z" -} \ No newline at end of file +{"contractName":"Avatar","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"whitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"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"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addToWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeFromWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isOnWhiteList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610ca483398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ba0806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820118f8a1c9f7f0637cd665e39433b57da14db8bc38b602ee00aa16e2dc904c3300029"} \ No newline at end of file diff --git a/build/contracts/BasicToken.json b/build/contracts/BasicToken.json index fdffa37..051521d 100644 --- a/build/contracts/BasicToken.json +++ b/build/contracts/BasicToken.json @@ -1,2102 +1 @@ -{ - "contractName": "BasicToken", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "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": 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": "balance", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b506103cb806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610149565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610192565b604051808215151515815260200191505060405180910390f35b60005481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101cf57600080fd5b61022182600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461036890919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102b682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461038190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600082821115151561037657fe5b818303905092915050565b600080828401905083811015151561039557fe5b80915050929150505600a165627a7a72305820e2abe99ffd7ce9c87c8f0f465754a73faae1e978eeb84c2baa8e6f966b73ac190029", - "deployedBytecode": "0x608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610149565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610192565b604051808215151515815260200191505060405180910390f35b60005481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101cf57600080fd5b61022182600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461036890919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102b682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461038190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600082821115151561037657fe5b818303905092915050565b600080828401905083811015151561039557fe5b80915050929150505600a165627a7a72305820e2abe99ffd7ce9c87c8f0f465754a73faae1e978eeb84c2baa8e6f966b73ac190029", - "sourceMap": "177:910:17:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;177:910:17;;;;;;;", - "deployedSourceMap": "177:910:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;179:26:19;;;;;;;;;;;;;;;;;;;;;;;973:111:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;973:111:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:334;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:334:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;;;:::o;973:111:17:-;1033:15;1063:8;:16;1072:6;1063:16;;;;;;;;;;;;;;;;1056:23;;973:111;;;:::o;437:334::-;500:4;535:1;520:17;;:3;:17;;;;512:26;;;;;;;;631:32;656:6;631:8;:20;640:10;631:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;608:8;:20;617:10;608:20;;;;;;;;;;;;;;;:55;;;;685:25;703:6;685:8;:13;694:3;685:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;669:8;:13;678:3;669:13;;;;;;;;;;;;;;;:41;;;;737:3;716:33;;725:10;716:33;;;742:6;716:33;;;;;;;;;;;;;;;;;;762:4;755:11;;437:334;;;;:::o;562:114:15:-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;680:133::-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o", - "source": "pragma solidity ^0.4.11;\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) balances;\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(_to != address(0));\n\n // SafeMath.sub will throw if there is not enough balance.\n balances[msg.sender] = balances[msg.sender].sub(_value);\n balances[_to] = balances[_to].add(_value);\n 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 constant returns (uint256 balance) {\n return balances[_owner];\n }\n\n}\n", - "sourcePath": "zeppelin-solidity/contracts/token/BasicToken.sol", - "ast": { - "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", - "exportedSymbols": { - "BasicToken": [ - 2883 - ] - }, - "id": 2884, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2808, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:17" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "file": "./ERC20Basic.sol", - "id": 2809, - "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2956, - "src": "27:26:17", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "../math/SafeMath.sol", - "id": 2810, - "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2751, - "src": "54:30:17", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2811, - "name": "ERC20Basic", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, - "src": "200:10:17", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", - "typeString": "contract ERC20Basic" - } - }, - "id": 2812, - "nodeType": "InheritanceSpecifier", - "src": "200:10:17" - } - ], - "contractDependencies": [ - 2955 - ], - "contractKind": "contract", - "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", - "fullyImplemented": true, - "id": 2883, - "linearizedBaseContracts": [ - 2883, - 2955 - ], - "name": "BasicToken", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 2815, - "libraryName": { - "contractScope": null, - "id": 2813, - "name": "SafeMath", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, - "src": "221:8:17", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", - "typeString": "library SafeMath" - } - }, - "nodeType": "UsingForDirective", - "src": "215:27:17", - "typeName": { - "id": 2814, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "234:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 2819, - "name": "balances", - "nodeType": "VariableDeclaration", - "scope": 2883, - "src": "246:36:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 2818, - "keyType": { - "id": 2816, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "254:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "246:27:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 2817, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "265:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "body": { - "id": 2869, - "nodeType": "Block", - "src": "506:265:17", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2829, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "520:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2831, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "535:1:17", - "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": 2830, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "527:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2832, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "527:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "520:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2828, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "512:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "512:26:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2835, - "nodeType": "ExpressionStatement", - "src": "512:26:17" - }, - { - "expression": { - "argumentTypes": null, - "id": 2847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2836, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "608:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2839, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2837, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "617:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "617:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "608:20:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2845, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2823, - "src": "656:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2840, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "631:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2843, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2841, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "640:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2842, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "640:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "631:20:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "631:24:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 2846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "631:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "608:55:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2848, - "nodeType": "ExpressionStatement", - "src": "608:55:17" - }, - { - "expression": { - "argumentTypes": null, - "id": 2858, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2849, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "669:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2851, - "indexExpression": { - "argumentTypes": null, - "id": 2850, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "678:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "669:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2856, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2823, - "src": "703:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2852, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "685:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2854, - "indexExpression": { - "argumentTypes": null, - "id": 2853, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "694:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "685:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 2749, - "src": "685:17:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 2857, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "685:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "669:41:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2859, - "nodeType": "ExpressionStatement", - "src": "669:41:17" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2861, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "725:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2862, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "725:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2863, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "737:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2864, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2823, - "src": "742:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2860, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "716:8:17", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 2865, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "716:33:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2866, - "nodeType": "ExpressionStatement", - "src": "716:33:17" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 2867, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "762:4:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2827, - "id": 2868, - "nodeType": "Return", - "src": "755:11:17" - } - ] - }, - "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": 2870, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2824, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2821, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 2870, - "src": "455:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2820, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "455:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2823, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 2870, - "src": "468:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2822, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "468:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "454:29:17" - }, - "payable": false, - "returnParameters": { - "id": 2827, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2826, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2870, - "src": "500:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2825, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "500:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "499:6:17" - }, - "scope": 2883, - "src": "437:334:17", - "stateMutability": "nonpayable", - "superFunction": 2946, - "visibility": "public" - }, - { - "body": { - "id": 2881, - "nodeType": "Block", - "src": "1050:34:17", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2877, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1063:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2879, - "indexExpression": { - "argumentTypes": null, - "id": 2878, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2872, - "src": "1072:6:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1063:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2876, - "id": 2880, - "nodeType": "Return", - "src": "1056:23:17" - } - ] - }, - "documentation": "@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.", - "id": 2882, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2873, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2872, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 2882, - "src": "992:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2871, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "992:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "991:16:17" - }, - "payable": false, - "returnParameters": { - "id": 2876, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2875, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 2882, - "src": "1033:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2874, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1033:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1032:17:17" - }, - "scope": 2883, - "src": "973:111:17", - "stateMutability": "view", - "superFunction": 2937, - "visibility": "public" - } - ], - "scope": 2884, - "src": "177:910:17" - } - ], - "src": "0:1088:17" - }, - "legacyAST": { - "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", - "exportedSymbols": { - "BasicToken": [ - 2883 - ] - }, - "id": 2884, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2808, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:17" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "file": "./ERC20Basic.sol", - "id": 2809, - "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2956, - "src": "27:26:17", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "../math/SafeMath.sol", - "id": 2810, - "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2751, - "src": "54:30:17", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2811, - "name": "ERC20Basic", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, - "src": "200:10:17", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", - "typeString": "contract ERC20Basic" - } - }, - "id": 2812, - "nodeType": "InheritanceSpecifier", - "src": "200:10:17" - } - ], - "contractDependencies": [ - 2955 - ], - "contractKind": "contract", - "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", - "fullyImplemented": true, - "id": 2883, - "linearizedBaseContracts": [ - 2883, - 2955 - ], - "name": "BasicToken", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 2815, - "libraryName": { - "contractScope": null, - "id": 2813, - "name": "SafeMath", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, - "src": "221:8:17", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", - "typeString": "library SafeMath" - } - }, - "nodeType": "UsingForDirective", - "src": "215:27:17", - "typeName": { - "id": 2814, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "234:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 2819, - "name": "balances", - "nodeType": "VariableDeclaration", - "scope": 2883, - "src": "246:36:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 2818, - "keyType": { - "id": 2816, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "254:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "246:27:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 2817, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "265:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "body": { - "id": 2869, - "nodeType": "Block", - "src": "506:265:17", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2829, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "520:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2831, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "535:1:17", - "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": 2830, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "527:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2832, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "527:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "520:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2828, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "512:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "512:26:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2835, - "nodeType": "ExpressionStatement", - "src": "512:26:17" - }, - { - "expression": { - "argumentTypes": null, - "id": 2847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2836, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "608:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2839, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2837, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "617:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "617:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "608:20:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2845, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2823, - "src": "656:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2840, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "631:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2843, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2841, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "640:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2842, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "640:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "631:20:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "631:24:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 2846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "631:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "608:55:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2848, - "nodeType": "ExpressionStatement", - "src": "608:55:17" - }, - { - "expression": { - "argumentTypes": null, - "id": 2858, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2849, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "669:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2851, - "indexExpression": { - "argumentTypes": null, - "id": 2850, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "678:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "669:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2856, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2823, - "src": "703:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2852, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "685:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2854, - "indexExpression": { - "argumentTypes": null, - "id": 2853, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "694:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "685:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 2749, - "src": "685:17:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 2857, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "685:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "669:41:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2859, - "nodeType": "ExpressionStatement", - "src": "669:41:17" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2861, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "725:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2862, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "725:10:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2863, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2821, - "src": "737:3:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2864, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2823, - "src": "742:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2860, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "716:8:17", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 2865, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "716:33:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2866, - "nodeType": "ExpressionStatement", - "src": "716:33:17" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 2867, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "762:4:17", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2827, - "id": 2868, - "nodeType": "Return", - "src": "755:11:17" - } - ] - }, - "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": 2870, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2824, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2821, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 2870, - "src": "455:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2820, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "455:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2823, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 2870, - "src": "468:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2822, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "468:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "454:29:17" - }, - "payable": false, - "returnParameters": { - "id": 2827, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2826, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2870, - "src": "500:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2825, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "500:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "499:6:17" - }, - "scope": 2883, - "src": "437:334:17", - "stateMutability": "nonpayable", - "superFunction": 2946, - "visibility": "public" - }, - { - "body": { - "id": 2881, - "nodeType": "Block", - "src": "1050:34:17", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2877, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1063:8:17", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2879, - "indexExpression": { - "argumentTypes": null, - "id": 2878, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2872, - "src": "1072:6:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1063:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2876, - "id": 2880, - "nodeType": "Return", - "src": "1056:23:17" - } - ] - }, - "documentation": "@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.", - "id": 2882, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2873, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2872, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 2882, - "src": "992:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2871, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "992:7:17", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "991:16:17" - }, - "payable": false, - "returnParameters": { - "id": 2876, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2875, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 2882, - "src": "1033:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2874, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1033:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1032:17:17" - }, - "scope": 2883, - "src": "973:111:17", - "stateMutability": "view", - "superFunction": 2937, - "visibility": "public" - } - ], - "scope": 2884, - "src": "177:910:17" - } - ], - "src": "0:1088:17" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.689Z" -} \ No newline at end of file +{"contractName":"BasicToken","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":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":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506103cb806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610149565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610192565b604051808215151515815260200191505060405180910390f35b60005481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101cf57600080fd5b61022182600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461036890919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102b682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461038190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600082821115151561037657fe5b818303905092915050565b600080828401905083811015151561039557fe5b80915050929150505600a165627a7a72305820e2abe99ffd7ce9c87c8f0f465754a73faae1e978eeb84c2baa8e6f966b73ac190029"} \ No newline at end of file diff --git a/build/contracts/Debug.json b/build/contracts/Debug.json index e5d0b4f..131a497 100644 --- a/build/contracts/Debug.json +++ b/build/contracts/Debug.json @@ -1,772 +1 @@ -{ - "contractName": "Debug", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "address" - } - ], - "name": "LogAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "int256" - } - ], - "name": "LogInt", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "string" - } - ], - "name": "LogString", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "uint256" - } - ], - "name": "LogUint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "bytes" - } - ], - "name": "LogBytes", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "bytes32" - } - ], - "name": "LogBytes32", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "bool" - } - ], - "name": "LogBool", - "type": "event" - } - ], - "bytecode": "0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a72305820f1195c9349f61217a003a89a9ceea3db09fc866781858583c5d334526b4681860029", - "deployedBytecode": "0x6080604052600080fd00a165627a7a72305820f1195c9349f61217a003a89a9ceea3db09fc866781858583c5d334526b4681860029", - "sourceMap": "117:244:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;117:244:1;;;;;;;", - "deployedSourceMap": "117:244:1:-;;;;;", - "source": "pragma solidity ^0.4.18;\n\n/*\n A contract you can inherit from that has some useful Events to print statements.\n*/\ncontract Debug {\n event LogAddress(address _msg);\n event LogInt(int _msg);\n event LogString(string _msg);\n event LogUint(uint _msg);\n event LogBytes(bytes _msg);\n event LogBytes32(bytes32 _msg);\n event LogBool(bool _msg);\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", - "exportedSymbols": { - "Debug": [ - 87 - ] - }, - "id": 88, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 58, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:1" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 87, - "linearizedBaseContracts": [ - 87 - ], - "name": "Debug", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": null, - "id": 62, - "name": "LogAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 61, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 60, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "155:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 59, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "155:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "154:14:1" - }, - "src": "138:31:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 66, - "name": "LogInt", - "nodeType": "EventDefinition", - "parameters": { - "id": 65, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 64, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 66, - "src": "187:8:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 63, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "187:3:1", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "186:10:1" - }, - "src": "174:23:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 70, - "name": "LogString", - "nodeType": "EventDefinition", - "parameters": { - "id": 69, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 68, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 70, - "src": "218:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 67, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "218:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "217:13:1" - }, - "src": "202:29:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 74, - "name": "LogUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 73, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 72, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 74, - "src": "250:9:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 71, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "250:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "249:11:1" - }, - "src": "236:25:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 78, - "name": "LogBytes", - "nodeType": "EventDefinition", - "parameters": { - "id": 77, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 76, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 78, - "src": "281:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 75, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "281:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "280:12:1" - }, - "src": "266:27:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 82, - "name": "LogBytes32", - "nodeType": "EventDefinition", - "parameters": { - "id": 81, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 80, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 82, - "src": "315:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 79, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "315:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "314:14:1" - }, - "src": "298:31:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 86, - "name": "LogBool", - "nodeType": "EventDefinition", - "parameters": { - "id": 85, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 84, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 86, - "src": "348:9:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 83, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "348:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "347:11:1" - }, - "src": "334:25:1" - } - ], - "scope": 88, - "src": "117:244:1" - } - ], - "src": "0:362:1" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", - "exportedSymbols": { - "Debug": [ - 87 - ] - }, - "id": 88, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 58, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:1" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 87, - "linearizedBaseContracts": [ - 87 - ], - "name": "Debug", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": null, - "id": 62, - "name": "LogAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 61, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 60, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "155:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 59, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "155:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "154:14:1" - }, - "src": "138:31:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 66, - "name": "LogInt", - "nodeType": "EventDefinition", - "parameters": { - "id": 65, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 64, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 66, - "src": "187:8:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 63, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "187:3:1", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "186:10:1" - }, - "src": "174:23:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 70, - "name": "LogString", - "nodeType": "EventDefinition", - "parameters": { - "id": 69, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 68, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 70, - "src": "218:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 67, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "218:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "217:13:1" - }, - "src": "202:29:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 74, - "name": "LogUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 73, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 72, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 74, - "src": "250:9:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 71, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "250:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "249:11:1" - }, - "src": "236:25:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 78, - "name": "LogBytes", - "nodeType": "EventDefinition", - "parameters": { - "id": 77, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 76, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 78, - "src": "281:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 75, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "281:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "280:12:1" - }, - "src": "266:27:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 82, - "name": "LogBytes32", - "nodeType": "EventDefinition", - "parameters": { - "id": 81, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 80, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 82, - "src": "315:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 79, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "315:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "314:14:1" - }, - "src": "298:31:1" - }, - { - "anonymous": false, - "documentation": null, - "id": 86, - "name": "LogBool", - "nodeType": "EventDefinition", - "parameters": { - "id": 85, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 84, - "indexed": false, - "name": "_msg", - "nodeType": "VariableDeclaration", - "scope": 86, - "src": "348:9:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 83, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "348:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "347:11:1" - }, - "src": "334:25:1" - } - ], - "scope": 88, - "src": "117:244:1" - } - ], - "src": "0:362:1" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.668Z" -} \ No newline at end of file +{"contractName":"Debug","abi":[{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"address"}],"name":"LogAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"int256"}],"name":"LogInt","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"string"}],"name":"LogString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"uint256"}],"name":"LogUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes"}],"name":"LogBytes","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes32"}],"name":"LogBytes32","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bool"}],"name":"LogBool","type":"event"}],"bytecode":"0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058203e43a371eca5891e4ab433de8adde47e05099392d01faaeb6f856bb25b798cac0029"} \ No newline at end of file diff --git a/build/contracts/ERC20.json b/build/contracts/ERC20.json index e40a86e..12df321 100644 --- a/build/contracts/ERC20.json +++ b/build/contracts/ERC20.json @@ -1,1237 +1 @@ -{ - "contractName": "ERC20", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "who", - "type": "address" - } - ], - "name": "balanceOf", - "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" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "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": "owner", - "type": "address" - }, - { - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "from", - "type": "address" - }, - { - "name": "to", - "type": "address" - }, - { - "name": "value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "spender", - "type": "address" - }, - { - "name": "value", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "sourceMap": "", - "deployedSourceMap": "", - "source": "pragma solidity ^0.4.11;\n\n\nimport './ERC20Basic.sol';\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n", - "sourcePath": "zeppelin-solidity/contracts/token/ERC20.sol", - "ast": { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", - "exportedSymbols": { - "ERC20": [ - 2926 - ] - }, - "id": 2927, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2885, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:18" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "file": "./ERC20Basic.sol", - "id": 2886, - "nodeType": "ImportDirective", - "scope": 2927, - "sourceUnit": 2956, - "src": "27:26:18", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2887, - "name": "ERC20Basic", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, - "src": "163:10:18", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", - "typeString": "contract ERC20Basic" - } - }, - "id": 2888, - "nodeType": "InheritanceSpecifier", - "src": "163:10:18" - } - ], - "contractDependencies": [ - 2955 - ], - "contractKind": "contract", - "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", - "fullyImplemented": false, - "id": 2926, - "linearizedBaseContracts": [ - 2926, - 2955 - ], - "name": "ERC20", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": null, - "documentation": null, - "id": 2897, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2890, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2897, - "src": "197:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2889, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "197:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2892, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 2897, - "src": "212:15:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "212:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "196:32:18" - }, - "payable": false, - "returnParameters": { - "id": 2896, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2895, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2897, - "src": "254:7:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2894, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "254:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "253:9:18" - }, - "scope": 2926, - "src": "178:85:18", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2908, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2904, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2899, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "288:12:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2898, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "288:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2901, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "302:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2900, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "302:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2903, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "314:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2902, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "314:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "287:41:18" - }, - "payable": false, - "returnParameters": { - "id": 2907, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2906, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "345:4:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2905, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "345:4:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "344:6:18" - }, - "scope": 2926, - "src": "266:85:18", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2917, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2913, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2910, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 2917, - "src": "371:15:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2909, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "371:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2912, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2917, - "src": "388:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2911, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "388:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "370:32:18" - }, - "payable": false, - "returnParameters": { - "id": 2916, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2915, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2917, - "src": "419:4:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2914, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "419:4:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "418:6:18" - }, - "scope": 2926, - "src": "354:71:18", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2925, - "name": "Approval", - "nodeType": "EventDefinition", - "parameters": { - "id": 2924, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2919, - "indexed": true, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "443:21:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2918, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "443:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2921, - "indexed": true, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "466:23:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2920, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "466:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2923, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "491:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2922, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "491:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "442:63:18" - }, - "src": "428:78:18" - } - ], - "scope": 2927, - "src": "145:363:18" - } - ], - "src": "0:509:18" - }, - "legacyAST": { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", - "exportedSymbols": { - "ERC20": [ - 2926 - ] - }, - "id": 2927, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2885, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:18" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "file": "./ERC20Basic.sol", - "id": 2886, - "nodeType": "ImportDirective", - "scope": 2927, - "sourceUnit": 2956, - "src": "27:26:18", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2887, - "name": "ERC20Basic", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, - "src": "163:10:18", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", - "typeString": "contract ERC20Basic" - } - }, - "id": 2888, - "nodeType": "InheritanceSpecifier", - "src": "163:10:18" - } - ], - "contractDependencies": [ - 2955 - ], - "contractKind": "contract", - "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", - "fullyImplemented": false, - "id": 2926, - "linearizedBaseContracts": [ - 2926, - 2955 - ], - "name": "ERC20", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": null, - "documentation": null, - "id": 2897, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2890, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2897, - "src": "197:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2889, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "197:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2892, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 2897, - "src": "212:15:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "212:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "196:32:18" - }, - "payable": false, - "returnParameters": { - "id": 2896, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2895, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2897, - "src": "254:7:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2894, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "254:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "253:9:18" - }, - "scope": 2926, - "src": "178:85:18", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2908, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2904, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2899, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "288:12:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2898, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "288:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2901, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "302:10:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2900, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "302:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2903, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "314:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2902, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "314:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "287:41:18" - }, - "payable": false, - "returnParameters": { - "id": 2907, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2906, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2908, - "src": "345:4:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2905, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "345:4:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "344:6:18" - }, - "scope": 2926, - "src": "266:85:18", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2917, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2913, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2910, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 2917, - "src": "371:15:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2909, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "371:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2912, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2917, - "src": "388:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2911, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "388:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "370:32:18" - }, - "payable": false, - "returnParameters": { - "id": 2916, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2915, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2917, - "src": "419:4:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2914, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "419:4:18", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "418:6:18" - }, - "scope": 2926, - "src": "354:71:18", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2925, - "name": "Approval", - "nodeType": "EventDefinition", - "parameters": { - "id": 2924, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2919, - "indexed": true, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "443:21:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2918, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "443:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2921, - "indexed": true, - "name": "spender", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "466:23:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2920, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "466:7:18", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2923, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "491:13:18", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2922, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "491:7:18", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "442:63:18" - }, - "src": "428:78:18" - } - ], - "scope": 2927, - "src": "145:363:18" - } - ], - "src": "0:509:18" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.690Z" -} \ No newline at end of file +{"contractName":"ERC20","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"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":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x"} \ No newline at end of file diff --git a/build/contracts/ERC20Basic.json b/build/contracts/ERC20Basic.json index 87786aa..6ce0c1b 100644 --- a/build/contracts/ERC20Basic.json +++ b/build/contracts/ERC20Basic.json @@ -1,806 +1 @@ -{ - "contractName": "ERC20Basic", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "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": "who", - "type": "address" - } - ], - "name": "balanceOf", - "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" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "sourceMap": "", - "deployedSourceMap": "", - "source": "pragma solidity ^0.4.11;\n\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n", - "sourcePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "ast": { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "exportedSymbols": { - "ERC20Basic": [ - 2955 - ] - }, - "id": 2956, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2928, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:19" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", - "fullyImplemented": false, - "id": 2955, - "linearizedBaseContracts": [ - 2955 - ], - "name": "ERC20Basic", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2930, - "name": "totalSupply", - "nodeType": "VariableDeclaration", - "scope": 2955, - "src": "179:26:19", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2929, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "179:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2937, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2933, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2932, - "name": "who", - "nodeType": "VariableDeclaration", - "scope": 2937, - "src": "228:11:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2931, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "228:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "227:13:19" - }, - "payable": false, - "returnParameters": { - "id": 2936, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2935, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2937, - "src": "266:7:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2934, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "266:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "265:9:19" - }, - "scope": 2955, - "src": "209:66:19", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2946, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2942, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2939, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 2946, - "src": "296:10:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2938, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "296:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2941, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2946, - "src": "308:13:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2940, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "308:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "295:27:19" - }, - "payable": false, - "returnParameters": { - "id": 2945, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2944, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2946, - "src": "339:4:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2943, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "339:4:19", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "338:6:19" - }, - "scope": 2955, - "src": "278:67:19", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2954, - "name": "Transfer", - "nodeType": "EventDefinition", - "parameters": { - "id": 2953, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2948, - "indexed": true, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 2954, - "src": "363:20:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2947, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "363:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2950, - "indexed": true, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 2954, - "src": "385:18:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2949, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "385:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2952, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2954, - "src": "405:13:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2951, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "405:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "362:57:19" - }, - "src": "348:72:19" - } - ], - "scope": 2956, - "src": "155:267:19" - } - ], - "src": "0:423:19" - }, - "legacyAST": { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", - "exportedSymbols": { - "ERC20Basic": [ - 2955 - ] - }, - "id": 2956, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2928, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:19" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", - "fullyImplemented": false, - "id": 2955, - "linearizedBaseContracts": [ - 2955 - ], - "name": "ERC20Basic", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2930, - "name": "totalSupply", - "nodeType": "VariableDeclaration", - "scope": 2955, - "src": "179:26:19", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2929, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "179:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2937, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2933, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2932, - "name": "who", - "nodeType": "VariableDeclaration", - "scope": 2937, - "src": "228:11:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2931, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "228:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "227:13:19" - }, - "payable": false, - "returnParameters": { - "id": 2936, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2935, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2937, - "src": "266:7:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2934, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "266:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "265:9:19" - }, - "scope": 2955, - "src": "209:66:19", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": null, - "id": 2946, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2942, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2939, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 2946, - "src": "296:10:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2938, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "296:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2941, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2946, - "src": "308:13:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2940, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "308:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "295:27:19" - }, - "payable": false, - "returnParameters": { - "id": 2945, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2944, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2946, - "src": "339:4:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2943, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "339:4:19", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "338:6:19" - }, - "scope": 2955, - "src": "278:67:19", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2954, - "name": "Transfer", - "nodeType": "EventDefinition", - "parameters": { - "id": 2953, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2948, - "indexed": true, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 2954, - "src": "363:20:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2947, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "363:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2950, - "indexed": true, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 2954, - "src": "385:18:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2949, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "385:7:19", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2952, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 2954, - "src": "405:13:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2951, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "405:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "362:57:19" - }, - "src": "348:72:19" - } - ], - "scope": 2956, - "src": "155:267:19" - } - ], - "src": "0:423:19" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.690Z" -} \ No newline at end of file +{"contractName":"ERC20Basic","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":"who","type":"address"}],"name":"balanceOf","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"}],"bytecode":"0x"} \ No newline at end of file diff --git a/build/contracts/Likes.json b/build/contracts/Likes.json index ce94d14..2644c5e 100644 --- a/build/contracts/Likes.json +++ b/build/contracts/Likes.json @@ -1,7794 +1 @@ -{ - "contractName": "Likes", - "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": [ - { - "name": "_paratiiRegistry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_address", - "type": "address" - }, - { - "indexed": false, - "name": "_videoId", - "type": "string" - }, - { - "indexed": false, - "name": "_liked", - "type": "bool" - } - ], - "name": "LogLikeVideo", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - }, - { - "name": "_liked", - "type": "bool" - } - ], - "name": "likeVideo", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "userLikes", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "userDislikes", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "vidLikes", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "vidDislikes", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_address", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "userLikesVideo", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_address", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "userDislikesVideo", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b5060405160208061115e83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061105a806101046000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b70565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c42565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610cc9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cee565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dc0565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e09565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e90565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ed9565b005b600080600080339350856040518082805190602001908083835b6020831015156104d657805182526020820191506020810190506020830392506104b1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061050f8487610b70565b915061051b8487610cee565b90508480156105275750815b1561053157610b68565b8415801561053c5750805b1561054657610b68565b8415610802576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610725576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b838110156107c55780820151818401526020810190506107aa565b50505050905090810190601f1680156107f25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610b67576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555060016007600085600019166000191681526020019081526020016000206000828254019250508190555081156109e2576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610a82578082015181840152602081019050610a67565b50505050905090810190601f168015610aaf5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610be95780518252602082019150602081019050602083039250610bc4565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040518082805190602001908083835b602083101515610c7e5780518252602082019150602081019050602083039250610c59565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610d675780518252602082019150602081019050602083039250610d42565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040518082805190602001908083835b602083101515610e455780518252602082019150602081019050602083039250610e20565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f3457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f7057600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582029027e998157a44d413bf83430d6be764249170ac48a1d33c9d2f88133c419130029", - "deployedBytecode": "0x608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b70565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c42565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610cc9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cee565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dc0565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e09565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e90565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ed9565b005b600080600080339350856040518082805190602001908083835b6020831015156104d657805182526020820191506020810190506020830392506104b1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061050f8487610b70565b915061051b8487610cee565b90508480156105275750815b1561053157610b68565b8415801561053c5750805b1561054657610b68565b8415610802576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610725576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b838110156107c55780820151818401526020810190506107aa565b50505050905090810190601f1680156107f25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610b67576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555060016007600085600019166000191681526020019081526020016000206000828254019250508190555081156109e2576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610a82578082015181840152602081019050610a67565b50505050905090810190601f168015610aaf5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610be95780518252602082019150602081019050602083039250610bc4565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040518082805190602001908083835b602083101515610c7e5780518252602082019150602081019050602083039250610c59565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610d675780518252602082019150602081019050602083039250610d42565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040518082805190602001908083835b602083101515610e455780518252602082019150602081019050602083039250610e20565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f3457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f7057600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582029027e998157a44d413bf83430d6be764249170ac48a1d33c9d2f88133c419130029", - "sourceMap": "168:3216:3:-;;;736:125;8:9:-1;5:2;;;30:1;27;20:12;5:2;736:125:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;800:10:3;792:5;;:18;;;;;;;;;;;;;;;;;;838:16;820:15;;:34;;;;;;;;;;;;;;;;;;736:125;168:3216;;;;;;", - "deployedSourceMap": "168:3216:3:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;867:1603;;8:9:-1;5:2;;;30:1;27;20:12;5:2;867:1603:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3078:146;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3078:146:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2951:121;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2951:121:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;3230:152:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3230:152:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2710:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2710:114:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2830:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2830:115:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2476:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2476:107:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;867:1603:3;933:16;972:18;1022:20;1089:23;952:10;933:29;;1003:8;993:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;993:19:3;;;;;;;;;;;;;;;;972:40;;1045:34;1060:8;1070;1045:14;:34::i;:::-;1022:57;;1115:37;1133:8;1143;1115:17;:37::i;:::-;1089:63;;1167:6;:25;;;;;1177:15;1167:25;1163:118;;;1264:7;;1163:118;1296:6;1295:7;:29;;;;;1306:18;1295:29;1291:125;;;1399:7;;1291:125;1430:6;1426:481;;;1550:4;1519:6;:16;1526:8;1519:16;;;;;;;;;;;;;;;:28;1536:10;1519:28;;;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;1592:1;1568:10;:20;1579:8;1568:20;;;;;;;;;;;;;;;;:25;;;;;;;;;;;1632:1;1607:9;:21;1617:10;1607:21;;;;;;;;;;;;;;;;;;:26;;;;;;;;;;;1652:18;1648:189;;;1724:5;1690:9;:19;1700:8;1690:19;;;;;;;;;;;;;;;:31;1710:10;1690:31;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;1774:1;1747:13;:23;1761:8;1747:23;;;;;;;;;;;;;;;;:28;;;;;;;;;;;1821:1;1793:12;:24;1806:10;1793:24;;;;;;;;;;;;;;;;;;:29;;;;;;;;;;;1648:189;1856:40;1869:8;1879;1889:6;1856:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1856:40:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1426:481;1922:6;1921:7;1917:547;;;2045:4;2011:9;:19;2021:8;2011:19;;;;;;;;;;;;;;;:31;2031:10;2011:31;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;2090:1;2063:13;:23;2077:8;2063:23;;;;;;;;;;;;;;;;:28;;;;;;;;;;;2133:1;2105:12;:24;2118:10;2105:24;;;;;;;;;;;;;;;;;;:29;;;;;;;;;;;2153:15;2149:177;;;2219:5;2188:6;:16;2195:8;2188:16;;;;;;;;;;;;;;;:28;2205:10;2188:28;;;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;2266:1;2242:10;:20;2253:8;2242:20;;;;;;;;;;;;;;;;:25;;;;;;;;;;;2310:1;2285:9;:21;2295:10;2285:21;;;;;;;;;;;;;;;;;;:26;;;;;;;;;;;2149:177;2344:40;2357:8;2367;2377:6;2344:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2344:40:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2403:50;2416:8;2446:6;2403:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1917:547;867:1603;;;;;;;:::o;3078:146::-;3157:4;3180:6;:16;3187:8;3180:16;;;;;;;;;;;;;;;:37;3207:8;3197:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3197:19:3;;;;;;;;;;;;;;;;3180:37;;;;;;;;;;;;;;;;;;;;;;;;;;;3173:44;;3078:146;;;;:::o;2951:121::-;3009:4;3032:12;:33;3055:8;3045:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3045:19:3;;;;;;;;;;;;;;;;3032:33;;;;;;;;;;;;;;;;;;3025:40;;2951:121;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;3230:152:3:-;3312:4;3335:9;:19;3345:8;3335:19;;;;;;;;;;;;;;;:40;3365:8;3355:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3355:19:3;;;;;;;;;;;;;;;;3335:40;;;;;;;;;;;;;;;;;;;;;;;;;;;3328:47;;3230:152;;;;:::o;2710:114::-;2770:4;2794:13;:23;2808:8;2794:23;;;;;;;;;;;;;;;;2787:30;;2710:114;;;:::o;2830:115::-;2885:4;2908:9;:30;2928:8;2918:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2918:19:3;;;;;;;;;;;;;;;;2908:30;;;;;;;;;;;;;;;;;;2901:37;;2830:115;;;:::o;2476:107::-;2533:4;2556:10;:20;2567:8;2556:20;;;;;;;;;;;;;;;;2549:27;;2476:107;;;:::o;827:169:16:-;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.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Registry.sol\";\n\ncontract Likes is Ownable {\n\n address paratiiRegistry;\n\n // mapping from user addrsses and video ids to booleans\n mapping (address=> mapping (bytes32 => bool)) private _likes;\n mapping (address=> mapping (bytes32 => bool)) private _dislikes;\n // total of liks on a video\n mapping (address => uint) private _userLikes;\n mapping (address => uint) private _userDislikes;\n mapping (bytes32 => uint) private _vidLikes;\n mapping (bytes32 => uint) private _vidDislikes;\n\n event LogLikeVideo(address _address, string _videoId, bool _liked);\n\n constructor(Registry _paratiiRegistry) public {\n owner = msg.sender;\n paratiiRegistry = _paratiiRegistry;\n }\n\n function likeVideo(string _videoId, bool _liked) public {\n address _address = msg.sender;\n bytes32 _videoHash = keccak256(_videoId);\n bool _userLikesVideo = userLikesVideo(_address, _videoId);\n bool _userDislikesVideo = userDislikesVideo(_address, _videoId);\n\n if (_liked && _userLikesVideo) {\n // this user already liked the video before\n return;\n }\n\n if (!_liked && _userDislikesVideo) {\n // this user already disliked the video before\n return;\n }\n\n if (_liked) {\n // msg.sender likes his video and did not do so before\n _likes[_address][_videoHash] = true;\n _userLikes[_address] += 1;\n _vidLikes[_videoHash] += 1;\n\n if (_userDislikesVideo) {\n _dislikes[_address][_videoHash] = false;\n _userDislikes[_address] -= 1;\n _vidDislikes[_videoHash] -= 1;\n }\n\n emit LogLikeVideo(_address, _videoId, _liked);\n }\n\n if (!_liked) {\n // msg.sender likes his video and did not do so before\n _dislikes[_address][_videoHash] = true;\n _userDislikes[_address] += 1;\n _vidDislikes[_videoHash] += 1;\n\n if (_userLikesVideo) {\n _likes[_address][_videoHash] = false;\n _userLikes[_address] -= 1;\n _vidLikes[_videoHash] -= 1;\n }\n emit LogLikeVideo(_address, _videoId, _liked);\n emit LogLikeVideo(_address, \"this passed here\", _liked);\n }\n }\n\n function userLikes(address _address) public view returns(uint) {\n return _userLikes[_address];\n }\n\n /**\n * @dev returns total of dislikes registered by this user\n * @param _address Address of the user\n */\n function userDislikes(address _address) public view returns(uint) {\n return _userDislikes[_address];\n }\n\n function vidLikes(string _videoId) public view returns(uint) {\n return _vidLikes[keccak256(_videoId)];\n }\n\n function vidDislikes(string _videoId) public view returns(uint) {\n return _vidDislikes[keccak256(_videoId)];\n }\n\n function userLikesVideo(address _address, string _videoId) public view returns(bool) {\n return _likes[_address][keccak256(_videoId)];\n }\n\n function userDislikesVideo(address _address, string _videoId) public view returns(bool) {\n return _dislikes[_address][keccak256(_videoId)];\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Likes.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Likes.sol", - "exportedSymbols": { - "Likes": [ - 593 - ] - }, - "id": 594, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 289, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:3" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 290, - "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2807, - "src": "26:59:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 291, - "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2751, - "src": "86:55:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 292, - "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 1097, - "src": "142:24:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 293, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "186:7:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 294, - "nodeType": "InheritanceSpecifier", - "src": "186:7:3" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 593, - "linearizedBaseContracts": [ - 593, - 2806 - ], - "name": "Likes", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 296, - "name": "paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "201:23:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 295, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "201:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 302, - "name": "_likes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "291:60:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "typeName": { - "id": 301, - "keyType": { - "id": 297, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "300:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "291:45:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "valueType": { - "id": 300, - "keyType": { - "id": 298, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "319:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "310:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "valueType": { - "id": 299, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "330:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 308, - "name": "_dislikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "357:63:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "typeName": { - "id": 307, - "keyType": { - "id": 303, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "366:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "357:45:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "valueType": { - "id": 306, - "keyType": { - "id": 304, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "385:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "376:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "valueType": { - "id": 305, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "396:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 312, - "name": "_userLikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "458:44:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 311, - "keyType": { - "id": 309, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "467:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "458:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 310, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "478:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 316, - "name": "_userDislikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "508:47:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 315, - "keyType": { - "id": 313, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "517:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "508:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 314, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "528:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 320, - "name": "_vidLikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "561:43:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 319, - "keyType": { - "id": 317, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "570:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "561:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 318, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "581:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 324, - "name": "_vidDislikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "610:46:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 323, - "keyType": { - "id": 321, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "619:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "610:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 322, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "630:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": null, - "id": 332, - "name": "LogLikeVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 331, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 326, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 332, - "src": "682:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 325, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "682:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 328, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 332, - "src": "700:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 327, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "700:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 330, - "indexed": false, - "name": "_liked", - "nodeType": "VariableDeclaration", - "scope": 332, - "src": "717:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 329, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "717:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "681:48:3" - }, - "src": "663:67:3" - }, - { - "body": { - "id": 346, - "nodeType": "Block", - "src": "782:79:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 337, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "792:5:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 338, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "800:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "800:10:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "792:18:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 341, - "nodeType": "ExpressionStatement", - "src": "792:18:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 342, - "name": "paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 296, - "src": "820:15:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 343, - "name": "_paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "838:16:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "820:34:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 345, - "nodeType": "ExpressionStatement", - "src": "820:34:3" - } - ] - }, - "documentation": null, - "id": 347, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 335, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 334, - "name": "_paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 347, - "src": "748:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 333, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "748:8:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "747:27:3" - }, - "payable": false, - "returnParameters": { - "id": 336, - "nodeType": "ParameterList", - "parameters": [], - "src": "782:0:3" - }, - "scope": 593, - "src": "736:125:3", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 503, - "nodeType": "Block", - "src": "923:1547:3", - "statements": [ - { - "assignments": [ - 355 - ], - "declarations": [ - { - "constant": false, - "id": 355, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "933:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 354, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "933:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 358, - "initialValue": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 356, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "952:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 357, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "952:10:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "933:29:3" - }, - { - "assignments": [ - 360 - ], - "declarations": [ - { - "constant": false, - "id": 360, - "name": "_videoHash", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "972:18:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 359, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "972:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 364, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 362, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1003:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 361, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "993:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 363, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "993:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "972:40:3" - }, - { - "assignments": [ - 366 - ], - "declarations": [ - { - "constant": false, - "id": 366, - "name": "_userLikesVideo", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1022:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 365, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1022:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 371, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 368, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1060:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 369, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1070:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 367, - "name": "userLikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 574, - "src": "1045:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,string memory) view returns (bool)" - } - }, - "id": 370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1045:34:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1022:57:3" - }, - { - "assignments": [ - 373 - ], - "declarations": [ - { - "constant": false, - "id": 373, - "name": "_userDislikesVideo", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1089:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 372, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1089:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 378, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 375, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1133:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 376, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1143:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 374, - "name": "userDislikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "1115:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,string memory) view returns (bool)" - } - }, - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1115:37:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1089:63:3" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 379, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1167:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "id": 380, - "name": "_userLikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "1177:15:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1167:25:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 384, - "nodeType": "IfStatement", - "src": "1163:118:3", - "trueBody": { - "id": 383, - "nodeType": "Block", - "src": "1194:87:3", - "statements": [ - { - "expression": null, - "functionReturnParameters": 353, - "id": 382, - "nodeType": "Return", - "src": "1264:7:3" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1295:7:3", - "subExpression": { - "argumentTypes": null, - "id": 385, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1296:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "id": 387, - "name": "_userDislikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1306:18:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1295:29:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 391, - "nodeType": "IfStatement", - "src": "1291:125:3", - "trueBody": { - "id": 390, - "nodeType": "Block", - "src": "1326:90:3", - "statements": [ - { - "expression": null, - "functionReturnParameters": 353, - "id": 389, - "nodeType": "Return", - "src": "1399:7:3" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "id": 392, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1430:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 443, - "nodeType": "IfStatement", - "src": "1426:481:3", - "trueBody": { - "id": 442, - "nodeType": "Block", - "src": "1438:469:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 393, - "name": "_likes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "1519:6:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 396, - "indexExpression": { - "argumentTypes": null, - "id": 394, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1526:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1519:16:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 397, - "indexExpression": { - "argumentTypes": null, - "id": 395, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1536:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1519:28:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1550:4:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "1519:35:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 400, - "nodeType": "ExpressionStatement", - "src": "1519:35:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 401, - "name": "_userLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "1568:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 403, - "indexExpression": { - "argumentTypes": null, - "id": 402, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1579:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1568:20:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 404, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1592:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1568:25:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 406, - "nodeType": "ExpressionStatement", - "src": "1568:25:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 407, - "name": "_vidLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "1607:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 409, - "indexExpression": { - "argumentTypes": null, - "id": 408, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1617:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1607:21:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 410, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1632:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1607:26:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 412, - "nodeType": "ExpressionStatement", - "src": "1607:26:3" - }, - { - "condition": { - "argumentTypes": null, - "id": 413, - "name": "_userDislikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1652:18:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 435, - "nodeType": "IfStatement", - "src": "1648:189:3", - "trueBody": { - "id": 434, - "nodeType": "Block", - "src": "1672:165:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 414, - "name": "_dislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 308, - "src": "1690:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 417, - "indexExpression": { - "argumentTypes": null, - "id": 415, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1700:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1690:19:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 418, - "indexExpression": { - "argumentTypes": null, - "id": 416, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1710:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1690:31:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 419, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1724:5:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "1690:39:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 421, - "nodeType": "ExpressionStatement", - "src": "1690:39:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 422, - "name": "_userDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "1747:13:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 424, - "indexExpression": { - "argumentTypes": null, - "id": 423, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1761:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1747:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 425, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1774:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1747:28:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 427, - "nodeType": "ExpressionStatement", - "src": "1747:28:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 428, - "name": "_vidDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 324, - "src": "1793:12:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 430, - "indexExpression": { - "argumentTypes": null, - "id": 429, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1806:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1793:24:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 431, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1821:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1793:29:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 433, - "nodeType": "ExpressionStatement", - "src": "1793:29:3" - } - ] - } - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 437, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1869:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 438, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1879:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 439, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1889:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 436, - "name": "LogLikeVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 332, - "src": "1856:12:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,string memory,bool)" - } - }, - "id": 440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1856:40:3", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 441, - "nodeType": "EmitStatement", - "src": "1851:45:3" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "id": 445, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1921:7:3", - "subExpression": { - "argumentTypes": null, - "id": 444, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1922:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 502, - "nodeType": "IfStatement", - "src": "1917:547:3", - "trueBody": { - "id": 501, - "nodeType": "Block", - "src": "1930:534:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 452, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 446, - "name": "_dislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 308, - "src": "2011:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 449, - "indexExpression": { - "argumentTypes": null, - "id": 447, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2021:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2011:19:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 450, - "indexExpression": { - "argumentTypes": null, - "id": 448, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2031:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2011:31:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 451, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2045:4:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2011:38:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 453, - "nodeType": "ExpressionStatement", - "src": "2011:38:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 454, - "name": "_userDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2063:13:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 456, - "indexExpression": { - "argumentTypes": null, - "id": 455, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2077:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2063:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 457, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2090:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2063:28:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 459, - "nodeType": "ExpressionStatement", - "src": "2063:28:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 460, - "name": "_vidDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 324, - "src": "2105:12:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 462, - "indexExpression": { - "argumentTypes": null, - "id": 461, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2118:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2105:24:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2133:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2105:29:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 465, - "nodeType": "ExpressionStatement", - "src": "2105:29:3" - }, - { - "condition": { - "argumentTypes": null, - "id": 466, - "name": "_userLikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "2153:15:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 488, - "nodeType": "IfStatement", - "src": "2149:177:3", - "trueBody": { - "id": 487, - "nodeType": "Block", - "src": "2170:156:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 467, - "name": "_likes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "2188:6:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 470, - "indexExpression": { - "argumentTypes": null, - "id": 468, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2195:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2188:16:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 471, - "indexExpression": { - "argumentTypes": null, - "id": 469, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2205:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2188:28:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2219:5:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "2188:36:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 474, - "nodeType": "ExpressionStatement", - "src": "2188:36:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 479, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 475, - "name": "_userLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "2242:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 477, - "indexExpression": { - "argumentTypes": null, - "id": 476, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2253:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2242:20:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2266:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2242:25:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 480, - "nodeType": "ExpressionStatement", - "src": "2242:25:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 485, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 481, - "name": "_vidLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "2285:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 483, - "indexExpression": { - "argumentTypes": null, - "id": 482, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2295:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2285:21:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 484, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2310:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2285:26:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 486, - "nodeType": "ExpressionStatement", - "src": "2285:26:3" - } - ] - } - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 490, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2357:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 491, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "2367:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 492, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "2377:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 489, - "name": "LogLikeVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 332, - "src": "2344:12:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,string memory,bool)" - } - }, - "id": 493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2344:40:3", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 494, - "nodeType": "EmitStatement", - "src": "2339:45:3" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 496, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2416:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "hexValue": "74686973207061737365642068657265", - "id": 497, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2426:18:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", - "typeString": "literal_string \"this passed here\"" - }, - "value": "this passed here" - }, - { - "argumentTypes": null, - "id": 498, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "2446:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", - "typeString": "literal_string \"this passed here\"" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 495, - "name": "LogLikeVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 332, - "src": "2403:12:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,string memory,bool)" - } - }, - "id": 499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2403:50:3", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 500, - "nodeType": "EmitStatement", - "src": "2398:55:3" - } - ] - } - } - ] - }, - "documentation": null, - "id": 504, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "likeVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 352, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 349, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "886:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 348, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "886:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 351, - "name": "_liked", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "903:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 350, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "903:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "885:30:3" - }, - "payable": false, - "returnParameters": { - "id": 353, - "nodeType": "ParameterList", - "parameters": [], - "src": "923:0:3" - }, - "scope": 593, - "src": "867:1603:3", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 515, - "nodeType": "Block", - "src": "2539:44:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 511, - "name": "_userLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "2556:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 513, - "indexExpression": { - "argumentTypes": null, - "id": 512, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 506, - "src": "2567:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2556:20:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 510, - "id": 514, - "nodeType": "Return", - "src": "2549:27:3" - } - ] - }, - "documentation": null, - "id": 516, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userLikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 507, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 506, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2495:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 505, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2495:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2494:18:3" - }, - "payable": false, - "returnParameters": { - "id": 510, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 509, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2533:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 508, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2533:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2532:6:3" - }, - "scope": 593, - "src": "2476:107:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 527, - "nodeType": "Block", - "src": "2777:47:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 523, - "name": "_userDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2794:13:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 525, - "indexExpression": { - "argumentTypes": null, - "id": 524, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "2808:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2794:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 522, - "id": 526, - "nodeType": "Return", - "src": "2787:30:3" - } - ] - }, - "documentation": "@dev returns total of dislikes registered by this user\n@param _address Address of the user", - "id": 528, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userDislikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 519, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 518, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2732:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 517, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2732:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2731:18:3" - }, - "payable": false, - "returnParameters": { - "id": 522, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 521, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2770:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 520, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2770:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2769:6:3" - }, - "scope": 593, - "src": "2710:114:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 541, - "nodeType": "Block", - "src": "2891:54:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 535, - "name": "_vidLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "2908:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 539, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 537, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "2928:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 536, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2918:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2918:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2908:30:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 534, - "id": 540, - "nodeType": "Return", - "src": "2901:37:3" - } - ] - }, - "documentation": null, - "id": 542, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "vidLikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 531, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 530, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2848:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 529, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2848:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2847:17:3" - }, - "payable": false, - "returnParameters": { - "id": 534, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 533, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2885:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 532, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2885:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2884:6:3" - }, - "scope": 593, - "src": "2830:115:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 555, - "nodeType": "Block", - "src": "3015:57:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 549, - "name": "_vidDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 324, - "src": "3032:12:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 553, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 551, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "3055:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 550, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3045:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 552, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3045:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3032:33:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 548, - "id": 554, - "nodeType": "Return", - "src": "3025:40:3" - } - ] - }, - "documentation": null, - "id": 556, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "vidDislikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 545, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 544, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 556, - "src": "2972:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 543, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2972:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2971:17:3" - }, - "payable": false, - "returnParameters": { - "id": 548, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 547, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 556, - "src": "3009:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 546, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3009:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3008:6:3" - }, - "scope": 593, - "src": "2951:121:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 573, - "nodeType": "Block", - "src": "3163:61:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 565, - "name": "_likes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "3180:6:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 567, - "indexExpression": { - "argumentTypes": null, - "id": 566, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 558, - "src": "3187:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3180:16:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 571, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 569, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "3207:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 568, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3197:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3197:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3180:37:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 564, - "id": 572, - "nodeType": "Return", - "src": "3173:44:3" - } - ] - }, - "documentation": null, - "id": 574, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userLikesVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 561, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 558, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3102:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 557, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3102:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 560, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3120:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 559, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3120:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3101:35:3" - }, - "payable": false, - "returnParameters": { - "id": 564, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 563, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3157:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 562, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3157:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3156:6:3" - }, - "scope": 593, - "src": "3078:146:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 591, - "nodeType": "Block", - "src": "3318:64:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 583, - "name": "_dislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 308, - "src": "3335:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 585, - "indexExpression": { - "argumentTypes": null, - "id": 584, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 576, - "src": "3345:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3335:19:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 589, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "3365:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 586, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3355:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3355:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3335:40:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 582, - "id": 590, - "nodeType": "Return", - "src": "3328:47:3" - } - ] - }, - "documentation": null, - "id": 592, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userDislikesVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 579, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 576, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3257:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 575, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3257:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 578, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3275:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 577, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3275:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3256:35:3" - }, - "payable": false, - "returnParameters": { - "id": 582, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 581, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3312:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 580, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3312:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3311:6:3" - }, - "scope": 593, - "src": "3230:152:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 594, - "src": "168:3216:3" - } - ], - "src": "0:3385:3" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Likes.sol", - "exportedSymbols": { - "Likes": [ - 593 - ] - }, - "id": 594, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 289, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:3" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 290, - "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2807, - "src": "26:59:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 291, - "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2751, - "src": "86:55:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 292, - "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 1097, - "src": "142:24:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 293, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "186:7:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 294, - "nodeType": "InheritanceSpecifier", - "src": "186:7:3" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 593, - "linearizedBaseContracts": [ - 593, - 2806 - ], - "name": "Likes", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 296, - "name": "paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "201:23:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 295, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "201:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 302, - "name": "_likes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "291:60:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "typeName": { - "id": 301, - "keyType": { - "id": 297, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "300:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "291:45:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "valueType": { - "id": 300, - "keyType": { - "id": 298, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "319:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "310:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "valueType": { - "id": 299, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "330:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 308, - "name": "_dislikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "357:63:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "typeName": { - "id": 307, - "keyType": { - "id": 303, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "366:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "357:45:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - }, - "valueType": { - "id": 306, - "keyType": { - "id": 304, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "385:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "376:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "valueType": { - "id": 305, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "396:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 312, - "name": "_userLikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "458:44:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 311, - "keyType": { - "id": 309, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "467:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "458:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 310, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "478:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 316, - "name": "_userDislikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "508:47:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 315, - "keyType": { - "id": 313, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "517:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "508:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 314, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "528:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 320, - "name": "_vidLikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "561:43:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 319, - "keyType": { - "id": 317, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "570:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "561:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 318, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "581:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "constant": false, - "id": 324, - "name": "_vidDislikes", - "nodeType": "VariableDeclaration", - "scope": 593, - "src": "610:46:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 323, - "keyType": { - "id": 321, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "619:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "610:25:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 322, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "630:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": null, - "id": 332, - "name": "LogLikeVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 331, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 326, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 332, - "src": "682:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 325, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "682:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 328, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 332, - "src": "700:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 327, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "700:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 330, - "indexed": false, - "name": "_liked", - "nodeType": "VariableDeclaration", - "scope": 332, - "src": "717:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 329, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "717:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "681:48:3" - }, - "src": "663:67:3" - }, - { - "body": { - "id": 346, - "nodeType": "Block", - "src": "782:79:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 337, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "792:5:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 338, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "800:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "800:10:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "792:18:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 341, - "nodeType": "ExpressionStatement", - "src": "792:18:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 342, - "name": "paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 296, - "src": "820:15:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 343, - "name": "_paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "838:16:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "820:34:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 345, - "nodeType": "ExpressionStatement", - "src": "820:34:3" - } - ] - }, - "documentation": null, - "id": 347, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 335, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 334, - "name": "_paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 347, - "src": "748:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 333, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "748:8:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "747:27:3" - }, - "payable": false, - "returnParameters": { - "id": 336, - "nodeType": "ParameterList", - "parameters": [], - "src": "782:0:3" - }, - "scope": 593, - "src": "736:125:3", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 503, - "nodeType": "Block", - "src": "923:1547:3", - "statements": [ - { - "assignments": [ - 355 - ], - "declarations": [ - { - "constant": false, - "id": 355, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "933:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 354, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "933:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 358, - "initialValue": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 356, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "952:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 357, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "952:10:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "933:29:3" - }, - { - "assignments": [ - 360 - ], - "declarations": [ - { - "constant": false, - "id": 360, - "name": "_videoHash", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "972:18:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 359, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "972:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 364, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 362, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1003:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 361, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "993:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 363, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "993:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "972:40:3" - }, - { - "assignments": [ - 366 - ], - "declarations": [ - { - "constant": false, - "id": 366, - "name": "_userLikesVideo", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1022:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 365, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1022:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 371, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 368, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1060:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 369, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1070:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 367, - "name": "userLikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 574, - "src": "1045:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,string memory) view returns (bool)" - } - }, - "id": 370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1045:34:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1022:57:3" - }, - { - "assignments": [ - 373 - ], - "declarations": [ - { - "constant": false, - "id": 373, - "name": "_userDislikesVideo", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1089:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 372, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1089:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 378, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 375, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1133:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 376, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1143:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 374, - "name": "userDislikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "1115:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,string memory) view returns (bool)" - } - }, - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1115:37:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1089:63:3" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 379, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1167:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "id": 380, - "name": "_userLikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "1177:15:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1167:25:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 384, - "nodeType": "IfStatement", - "src": "1163:118:3", - "trueBody": { - "id": 383, - "nodeType": "Block", - "src": "1194:87:3", - "statements": [ - { - "expression": null, - "functionReturnParameters": 353, - "id": 382, - "nodeType": "Return", - "src": "1264:7:3" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1295:7:3", - "subExpression": { - "argumentTypes": null, - "id": 385, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1296:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "id": 387, - "name": "_userDislikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1306:18:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1295:29:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 391, - "nodeType": "IfStatement", - "src": "1291:125:3", - "trueBody": { - "id": 390, - "nodeType": "Block", - "src": "1326:90:3", - "statements": [ - { - "expression": null, - "functionReturnParameters": 353, - "id": 389, - "nodeType": "Return", - "src": "1399:7:3" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "id": 392, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1430:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 443, - "nodeType": "IfStatement", - "src": "1426:481:3", - "trueBody": { - "id": 442, - "nodeType": "Block", - "src": "1438:469:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 393, - "name": "_likes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "1519:6:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 396, - "indexExpression": { - "argumentTypes": null, - "id": 394, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1526:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1519:16:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 397, - "indexExpression": { - "argumentTypes": null, - "id": 395, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1536:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1519:28:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1550:4:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "1519:35:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 400, - "nodeType": "ExpressionStatement", - "src": "1519:35:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 401, - "name": "_userLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "1568:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 403, - "indexExpression": { - "argumentTypes": null, - "id": 402, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1579:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1568:20:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 404, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1592:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1568:25:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 406, - "nodeType": "ExpressionStatement", - "src": "1568:25:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 407, - "name": "_vidLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "1607:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 409, - "indexExpression": { - "argumentTypes": null, - "id": 408, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1617:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1607:21:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 410, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1632:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1607:26:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 412, - "nodeType": "ExpressionStatement", - "src": "1607:26:3" - }, - { - "condition": { - "argumentTypes": null, - "id": 413, - "name": "_userDislikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1652:18:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 435, - "nodeType": "IfStatement", - "src": "1648:189:3", - "trueBody": { - "id": 434, - "nodeType": "Block", - "src": "1672:165:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 414, - "name": "_dislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 308, - "src": "1690:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 417, - "indexExpression": { - "argumentTypes": null, - "id": 415, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1700:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1690:19:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 418, - "indexExpression": { - "argumentTypes": null, - "id": 416, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1710:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1690:31:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 419, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1724:5:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "1690:39:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 421, - "nodeType": "ExpressionStatement", - "src": "1690:39:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 422, - "name": "_userDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "1747:13:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 424, - "indexExpression": { - "argumentTypes": null, - "id": 423, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1761:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1747:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 425, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1774:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1747:28:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 427, - "nodeType": "ExpressionStatement", - "src": "1747:28:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 428, - "name": "_vidDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 324, - "src": "1793:12:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 430, - "indexExpression": { - "argumentTypes": null, - "id": 429, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "1806:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1793:24:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 431, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1821:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1793:29:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 433, - "nodeType": "ExpressionStatement", - "src": "1793:29:3" - } - ] - } - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 437, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "1869:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 438, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1879:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 439, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1889:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 436, - "name": "LogLikeVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 332, - "src": "1856:12:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,string memory,bool)" - } - }, - "id": 440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1856:40:3", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 441, - "nodeType": "EmitStatement", - "src": "1851:45:3" - } - ] - } - }, - { - "condition": { - "argumentTypes": null, - "id": 445, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1921:7:3", - "subExpression": { - "argumentTypes": null, - "id": 444, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "1922:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 502, - "nodeType": "IfStatement", - "src": "1917:547:3", - "trueBody": { - "id": 501, - "nodeType": "Block", - "src": "1930:534:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 452, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 446, - "name": "_dislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 308, - "src": "2011:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 449, - "indexExpression": { - "argumentTypes": null, - "id": 447, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2021:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2011:19:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 450, - "indexExpression": { - "argumentTypes": null, - "id": 448, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2031:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2011:31:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 451, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2045:4:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2011:38:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 453, - "nodeType": "ExpressionStatement", - "src": "2011:38:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 454, - "name": "_userDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2063:13:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 456, - "indexExpression": { - "argumentTypes": null, - "id": 455, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2077:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2063:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 457, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2090:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2063:28:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 459, - "nodeType": "ExpressionStatement", - "src": "2063:28:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 460, - "name": "_vidDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 324, - "src": "2105:12:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 462, - "indexExpression": { - "argumentTypes": null, - "id": 461, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2118:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2105:24:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2133:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2105:29:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 465, - "nodeType": "ExpressionStatement", - "src": "2105:29:3" - }, - { - "condition": { - "argumentTypes": null, - "id": 466, - "name": "_userLikesVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "2153:15:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 488, - "nodeType": "IfStatement", - "src": "2149:177:3", - "trueBody": { - "id": 487, - "nodeType": "Block", - "src": "2170:156:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 467, - "name": "_likes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "2188:6:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 470, - "indexExpression": { - "argumentTypes": null, - "id": 468, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2195:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2188:16:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 471, - "indexExpression": { - "argumentTypes": null, - "id": 469, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2205:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2188:28:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2219:5:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "2188:36:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 474, - "nodeType": "ExpressionStatement", - "src": "2188:36:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 479, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 475, - "name": "_userLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "2242:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 477, - "indexExpression": { - "argumentTypes": null, - "id": 476, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2253:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2242:20:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2266:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2242:25:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 480, - "nodeType": "ExpressionStatement", - "src": "2242:25:3" - }, - { - "expression": { - "argumentTypes": null, - "id": 485, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 481, - "name": "_vidLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "2285:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 483, - "indexExpression": { - "argumentTypes": null, - "id": 482, - "name": "_videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "2295:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2285:21:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 484, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2310:1:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2285:26:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 486, - "nodeType": "ExpressionStatement", - "src": "2285:26:3" - } - ] - } - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 490, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2357:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 491, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "2367:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 492, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "2377:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 489, - "name": "LogLikeVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 332, - "src": "2344:12:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,string memory,bool)" - } - }, - "id": 493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2344:40:3", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 494, - "nodeType": "EmitStatement", - "src": "2339:45:3" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 496, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 355, - "src": "2416:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "hexValue": "74686973207061737365642068657265", - "id": 497, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2426:18:3", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", - "typeString": "literal_string \"this passed here\"" - }, - "value": "this passed here" - }, - { - "argumentTypes": null, - "id": 498, - "name": "_liked", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 351, - "src": "2446:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", - "typeString": "literal_string \"this passed here\"" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 495, - "name": "LogLikeVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 332, - "src": "2403:12:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,string memory,bool)" - } - }, - "id": 499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2403:50:3", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 500, - "nodeType": "EmitStatement", - "src": "2398:55:3" - } - ] - } - } - ] - }, - "documentation": null, - "id": 504, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "likeVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 352, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 349, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "886:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 348, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "886:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 351, - "name": "_liked", - "nodeType": "VariableDeclaration", - "scope": 504, - "src": "903:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 350, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "903:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "885:30:3" - }, - "payable": false, - "returnParameters": { - "id": 353, - "nodeType": "ParameterList", - "parameters": [], - "src": "923:0:3" - }, - "scope": 593, - "src": "867:1603:3", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 515, - "nodeType": "Block", - "src": "2539:44:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 511, - "name": "_userLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "2556:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 513, - "indexExpression": { - "argumentTypes": null, - "id": 512, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 506, - "src": "2567:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2556:20:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 510, - "id": 514, - "nodeType": "Return", - "src": "2549:27:3" - } - ] - }, - "documentation": null, - "id": 516, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userLikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 507, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 506, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2495:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 505, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2495:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2494:18:3" - }, - "payable": false, - "returnParameters": { - "id": 510, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 509, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2533:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 508, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2533:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2532:6:3" - }, - "scope": 593, - "src": "2476:107:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 527, - "nodeType": "Block", - "src": "2777:47:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 523, - "name": "_userDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2794:13:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 525, - "indexExpression": { - "argumentTypes": null, - "id": 524, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "2808:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2794:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 522, - "id": 526, - "nodeType": "Return", - "src": "2787:30:3" - } - ] - }, - "documentation": "@dev returns total of dislikes registered by this user\n@param _address Address of the user", - "id": 528, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userDislikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 519, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 518, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2732:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 517, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2732:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2731:18:3" - }, - "payable": false, - "returnParameters": { - "id": 522, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 521, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2770:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 520, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2770:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2769:6:3" - }, - "scope": 593, - "src": "2710:114:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 541, - "nodeType": "Block", - "src": "2891:54:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 535, - "name": "_vidLikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "2908:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 539, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 537, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "2928:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 536, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2918:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2918:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2908:30:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 534, - "id": 540, - "nodeType": "Return", - "src": "2901:37:3" - } - ] - }, - "documentation": null, - "id": 542, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "vidLikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 531, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 530, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2848:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 529, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2848:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2847:17:3" - }, - "payable": false, - "returnParameters": { - "id": 534, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 533, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2885:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 532, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2885:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2884:6:3" - }, - "scope": 593, - "src": "2830:115:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 555, - "nodeType": "Block", - "src": "3015:57:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 549, - "name": "_vidDislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 324, - "src": "3032:12:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 553, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 551, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "3055:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 550, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3045:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 552, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3045:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3032:33:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 548, - "id": 554, - "nodeType": "Return", - "src": "3025:40:3" - } - ] - }, - "documentation": null, - "id": 556, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "vidDislikes", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 545, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 544, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 556, - "src": "2972:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 543, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2972:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2971:17:3" - }, - "payable": false, - "returnParameters": { - "id": 548, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 547, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 556, - "src": "3009:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 546, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3009:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3008:6:3" - }, - "scope": 593, - "src": "2951:121:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 573, - "nodeType": "Block", - "src": "3163:61:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 565, - "name": "_likes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "3180:6:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 567, - "indexExpression": { - "argumentTypes": null, - "id": 566, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 558, - "src": "3187:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3180:16:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 571, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 569, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "3207:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 568, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3197:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3197:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3180:37:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 564, - "id": 572, - "nodeType": "Return", - "src": "3173:44:3" - } - ] - }, - "documentation": null, - "id": 574, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userLikesVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 561, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 558, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3102:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 557, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3102:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 560, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3120:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 559, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3120:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3101:35:3" - }, - "payable": false, - "returnParameters": { - "id": 564, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 563, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3157:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 562, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3157:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3156:6:3" - }, - "scope": 593, - "src": "3078:146:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 591, - "nodeType": "Block", - "src": "3318:64:3", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 583, - "name": "_dislikes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 308, - "src": "3335:9:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", - "typeString": "mapping(address => mapping(bytes32 => bool))" - } - }, - "id": 585, - "indexExpression": { - "argumentTypes": null, - "id": 584, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 576, - "src": "3345:8:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3335:19:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 589, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "3365:8:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 586, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3355:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3355:19:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3335:40:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 582, - "id": 590, - "nodeType": "Return", - "src": "3328:47:3" - } - ] - }, - "documentation": null, - "id": 592, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userDislikesVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 579, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 576, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3257:16:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 575, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3257:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 578, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3275:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 577, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3275:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3256:35:3" - }, - "payable": false, - "returnParameters": { - "id": 582, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 581, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3312:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 580, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3312:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3311:6:3" - }, - "scope": 593, - "src": "3230:152:3", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 594, - "src": "168:3216:3" - } - ], - "src": "0:3385:3" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.669Z" -} \ No newline at end of file +{"contractName":"Likes","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_liked","type":"bool"}],"name":"LogLikeVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_liked","type":"bool"}],"name":"likeVideo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userLikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userDislikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137a83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611276806101046000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bdc565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d1a565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610e0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e32565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f70565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fb9565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f5565b005b600080600080339350856040516020018082805190602001908083835b6020831015156104d957805182526020820191506020810190506020830392506104b4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610542578051825260208201915060208101905060208303925061051d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061057b8487610bdc565b91506105878487610e32565b90508480156105935750815b1561059d57610bd4565b841580156105a85750805b156105b257610bd4565b841561086e576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610791576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610831578082015181840152602081019050610816565b50505050905090810190601f16801561085e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610bd3576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600760008560001916600019168152602001908152602001600020600082825401925050819055508115610a4e576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610aee578082015181840152602081019050610ad3565b50505050905090810190601f168015610b1b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610c585780518252602082019150602081019050602083039250610c33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610cc15780518252602082019150602081019050602083039250610c9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040516020018082805190602001908083835b602083101515610d595780518252602082019150602081019050602083039250610d34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610dc25780518252602082019150602081019050602083039250610d9d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610eae5780518252602082019150602081019050602083039250610e89565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f175780518252602082019150602081019050602083039250610ef2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040516020018082805190602001908083835b602083101515610ff85780518252602082019150602081019050602083039250610fd3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611061578051825260208201915060208101905060208303925061103c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820e5d6c4125f0949c5038854b94f14a67bef35aee9eb1f7822366bf15e783727c10029"} \ No newline at end of file diff --git a/build/contracts/Migrations.json b/build/contracts/Migrations.json index 58ef991..bade9b1 100644 --- a/build/contracts/Migrations.json +++ b/build/contracts/Migrations.json @@ -1,1380 +1 @@ -{ - "contractName": "Migrations", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "last_completed_migration", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "constant": false, - "inputs": [ - { - "name": "completed", - "type": "uint256" - } - ], - "name": "setCompleted", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "new_address", - "type": "address" - } - ], - "name": "upgrade", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102f8806100606000396000f300608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b506100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b506101576004803603810190808035906020019092919050505061026c565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561022457600080fd5b505af1158015610238573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600a165627a7a723058200b479f716642043cfef0bbd1e4c44bbd855d13a81f1a64cc885a28764b9dd9c00029", - "deployedBytecode": "0x608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b506100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b506101576004803603810190808035906020019092919050505061026c565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561022457600080fd5b505af1158015610238573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600a165627a7a723058200b479f716642043cfef0bbd1e4c44bbd855d13a81f1a64cc885a28764b9dd9c00029", - "sourceMap": "24:467:0:-;;;176:51;8:9:-1;5:2;;;30:1;27;20:12;5:2;176:51:0;212:10;204:5;;:18;;;;;;;;;;;;;;;;;;24:467;;;;;;", - "deployedSourceMap": "24:467:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;331:158;;8:9:-1;5:2;;;30:1;27;20:12;5:2;331:158:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;72:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;72:36:0;;;;;;;;;;;;;;;;;;;;;;;48:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;48:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;231:96;;8:9:-1;5:2;;;30:1;27;20:12;5:2;231:96:0;;;;;;;;;;;;;;;;;;;;;;;;;;331:158;386:19;159:5;;;;;;;;;;;145:19;;:10;:19;;;141:26;;;419:11;386:45;;437:8;:21;;;459:24;;437:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;437:47:0;;;;141:26;331:158;;:::o;72:36::-;;;;:::o;48:20::-;;;;;;;;;;;;;:::o;231:96::-;159:5;;;;;;;;;;;145:19;;:10;:19;;;141:26;;;313:9;286:24;:36;;;;141:26;231:96;:::o", - "source": "pragma solidity ^0.4.0;\ncontract Migrations {\n address public owner;\n uint public last_completed_migration;\n\n modifier restricted() {\n if (msg.sender == owner) _;\n }\n\n function Migrations() {\n owner = msg.sender;\n }\n\n function setCompleted(uint completed) restricted {\n last_completed_migration = completed;\n }\n\n function upgrade(address new_address) restricted {\n Migrations upgraded = Migrations(new_address);\n upgraded.setCompleted(last_completed_migration);\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/Migrations.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/Migrations.sol", - "exportedSymbols": { - "Migrations": [ - 56 - ] - }, - "id": 57, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.4", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:23:0" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 56, - "linearizedBaseContracts": [ - 56 - ], - "name": "Migrations", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 3, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 56, - "src": "48:20:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "48:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 5, - "name": "last_completed_migration", - "nodeType": "VariableDeclaration", - "scope": 56, - "src": "72:36:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "72:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 13, - "nodeType": "Block", - "src": "135:37:0", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 7, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "145:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "145:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 9, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "159:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "145:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 12, - "nodeType": "IfStatement", - "src": "141:26:0", - "trueBody": { - "id": 11, - "nodeType": "PlaceholderStatement", - "src": "166:1:0" - } - } - ] - }, - "documentation": null, - "id": 14, - "name": "restricted", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 6, - "nodeType": "ParameterList", - "parameters": [], - "src": "132:2:0" - }, - "src": "113:59:0", - "visibility": "internal" - }, - { - "body": { - "id": 22, - "nodeType": "Block", - "src": "198:29:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 20, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 17, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "204:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 18, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "212:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 19, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "212:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "204:18:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 21, - "nodeType": "ExpressionStatement", - "src": "204:18:0" - } - ] - }, - "documentation": null, - "id": 23, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "Migrations", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 15, - "nodeType": "ParameterList", - "parameters": [], - "src": "195:2:0" - }, - "payable": false, - "returnParameters": { - "id": 16, - "nodeType": "ParameterList", - "parameters": [], - "src": "198:0:0" - }, - "scope": 56, - "src": "176:51:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 34, - "nodeType": "Block", - "src": "280:47:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 32, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 30, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5, - "src": "286:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 31, - "name": "completed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "313:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "286:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 33, - "nodeType": "ExpressionStatement", - "src": "286:36:0" - } - ] - }, - "documentation": null, - "id": 35, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 28, - "modifierName": { - "argumentTypes": null, - "id": 27, - "name": "restricted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "269:10:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "269:10:0" - } - ], - "name": "setCompleted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 26, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 25, - "name": "completed", - "nodeType": "VariableDeclaration", - "scope": 35, - "src": "253:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 24, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "253:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "252:16:0" - }, - "payable": false, - "returnParameters": { - "id": 29, - "nodeType": "ParameterList", - "parameters": [], - "src": "280:0:0" - }, - "scope": 56, - "src": "231:96:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 54, - "nodeType": "Block", - "src": "380:109:0", - "statements": [ - { - "assignments": [ - 43 - ], - "declarations": [ - { - "constant": false, - "id": 43, - "name": "upgraded", - "nodeType": "VariableDeclaration", - "scope": 55, - "src": "386:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - }, - "typeName": { - "contractScope": null, - "id": 42, - "name": "Migrations", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 56, - "src": "386:10:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 47, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 45, - "name": "new_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "419:11:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 44, - "name": "Migrations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 56, - "src": "408:10:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Migrations_$56_$", - "typeString": "type(contract Migrations)" - } - }, - "id": 46, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "408:23:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "386:45:0" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 51, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5, - "src": "459:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 48, - "name": "upgraded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 43, - "src": "437:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - } - }, - "id": 50, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "setCompleted", - "nodeType": "MemberAccess", - "referencedDeclaration": 35, - "src": "437:21:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 52, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "437:47:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 53, - "nodeType": "ExpressionStatement", - "src": "437:47:0" - } - ] - }, - "documentation": null, - "id": 55, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 40, - "modifierName": { - "argumentTypes": null, - "id": 39, - "name": "restricted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "369:10:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "369:10:0" - } - ], - "name": "upgrade", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 38, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 37, - "name": "new_address", - "nodeType": "VariableDeclaration", - "scope": 55, - "src": "348:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 36, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "348:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "347:21:0" - }, - "payable": false, - "returnParameters": { - "id": 41, - "nodeType": "ParameterList", - "parameters": [], - "src": "380:0:0" - }, - "scope": 56, - "src": "331:158:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 57, - "src": "24:467:0" - } - ], - "src": "0:492:0" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/Migrations.sol", - "exportedSymbols": { - "Migrations": [ - 56 - ] - }, - "id": 57, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.4", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "0:23:0" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 56, - "linearizedBaseContracts": [ - 56 - ], - "name": "Migrations", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 3, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 56, - "src": "48:20:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "48:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 5, - "name": "last_completed_migration", - "nodeType": "VariableDeclaration", - "scope": 56, - "src": "72:36:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "72:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 13, - "nodeType": "Block", - "src": "135:37:0", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 7, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "145:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "145:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 9, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "159:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "145:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 12, - "nodeType": "IfStatement", - "src": "141:26:0", - "trueBody": { - "id": 11, - "nodeType": "PlaceholderStatement", - "src": "166:1:0" - } - } - ] - }, - "documentation": null, - "id": 14, - "name": "restricted", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 6, - "nodeType": "ParameterList", - "parameters": [], - "src": "132:2:0" - }, - "src": "113:59:0", - "visibility": "internal" - }, - { - "body": { - "id": 22, - "nodeType": "Block", - "src": "198:29:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 20, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 17, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "204:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 18, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "212:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 19, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "212:10:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "204:18:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 21, - "nodeType": "ExpressionStatement", - "src": "204:18:0" - } - ] - }, - "documentation": null, - "id": 23, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "Migrations", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 15, - "nodeType": "ParameterList", - "parameters": [], - "src": "195:2:0" - }, - "payable": false, - "returnParameters": { - "id": 16, - "nodeType": "ParameterList", - "parameters": [], - "src": "198:0:0" - }, - "scope": 56, - "src": "176:51:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 34, - "nodeType": "Block", - "src": "280:47:0", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 32, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 30, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5, - "src": "286:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 31, - "name": "completed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "313:9:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "286:36:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 33, - "nodeType": "ExpressionStatement", - "src": "286:36:0" - } - ] - }, - "documentation": null, - "id": 35, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 28, - "modifierName": { - "argumentTypes": null, - "id": 27, - "name": "restricted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "269:10:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "269:10:0" - } - ], - "name": "setCompleted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 26, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 25, - "name": "completed", - "nodeType": "VariableDeclaration", - "scope": 35, - "src": "253:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 24, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "253:4:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "252:16:0" - }, - "payable": false, - "returnParameters": { - "id": 29, - "nodeType": "ParameterList", - "parameters": [], - "src": "280:0:0" - }, - "scope": 56, - "src": "231:96:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 54, - "nodeType": "Block", - "src": "380:109:0", - "statements": [ - { - "assignments": [ - 43 - ], - "declarations": [ - { - "constant": false, - "id": 43, - "name": "upgraded", - "nodeType": "VariableDeclaration", - "scope": 55, - "src": "386:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - }, - "typeName": { - "contractScope": null, - "id": 42, - "name": "Migrations", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 56, - "src": "386:10:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 47, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 45, - "name": "new_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37, - "src": "419:11:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 44, - "name": "Migrations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 56, - "src": "408:10:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Migrations_$56_$", - "typeString": "type(contract Migrations)" - } - }, - "id": 46, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "408:23:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "386:45:0" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 51, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5, - "src": "459:24:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 48, - "name": "upgraded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 43, - "src": "437:8:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$56", - "typeString": "contract Migrations" - } - }, - "id": 50, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "setCompleted", - "nodeType": "MemberAccess", - "referencedDeclaration": 35, - "src": "437:21:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 52, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "437:47:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 53, - "nodeType": "ExpressionStatement", - "src": "437:47:0" - } - ] - }, - "documentation": null, - "id": 55, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 40, - "modifierName": { - "argumentTypes": null, - "id": 39, - "name": "restricted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 14, - "src": "369:10:0", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "369:10:0" - } - ], - "name": "upgrade", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 38, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 37, - "name": "new_address", - "nodeType": "VariableDeclaration", - "scope": 55, - "src": "348:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 36, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "348:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "347:21:0" - }, - "payable": false, - "returnParameters": { - "id": 41, - "nodeType": "ParameterList", - "parameters": [], - "src": "380:0:0" - }, - "scope": 56, - "src": "331:158:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 57, - "src": "24:467:0" - } - ], - "src": "0:492:0" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.667Z" -} \ No newline at end of file +{"contractName":"Migrations","abi":[{"constant":true,"inputs":[],"name":"last_completed_migration","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":false,"inputs":[{"name":"completed","type":"uint256"}],"name":"setCompleted","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"new_address","type":"address"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102f8806100606000396000f300608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b506100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b506101576004803603810190808035906020019092919050505061026c565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561022457600080fd5b505af1158015610238573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600a165627a7a72305820c78536e19a06aafa077dfd2c6c9ce2d435b5dc19ffab1c981f813a3f3029b0870029"} \ No newline at end of file diff --git a/build/contracts/Ownable.json b/build/contracts/Ownable.json index 1b29272..70322ca 100644 --- a/build/contracts/Ownable.json +++ b/build/contracts/Ownable.json @@ -1,1459 +1 @@ -{ - "contractName": "Ownable", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "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" - }, - { - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610291806100606000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a8575b600080fd5b34801561005d57600080fd5b506100666100eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100b457600080fd5b506100e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610110565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561016b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156101a757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582090067046b17c22d1a16753fc182d09aa7040b1bbf9f0351a6b401b86754a48dc0029", - "deployedBytecode": "0x60806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a8575b600080fd5b34801561005d57600080fd5b506100666100eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100b457600080fd5b506100e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610110565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561016b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156101a757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582090067046b17c22d1a16753fc182d09aa7040b1bbf9f0351a6b401b86754a48dc0029", - "sourceMap": "217:782:16:-;;;469:48;8:9:-1;5:2;;;30:1;27;20:12;5:2;469:48:16;502:10;494:5;;:18;;;;;;;;;;;;;;;;;;217:782;;;;;;", - "deployedSourceMap": "217:782:16:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;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": { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "exportedSymbols": { - "Ownable": [ - 2806 - ] - }, - "id": 2807, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2752, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:16" - }, - { - "baseContracts": [], - "contractDependencies": [], - "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, - "id": 2806, - "linearizedBaseContracts": [ - 2806 - ], - "name": "Ownable", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2754, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2806, - "src": "238:20:16", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2753, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "238:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2760, - "name": "OwnershipTransferred", - "nodeType": "EventDefinition", - "parameters": { - "id": 2759, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2756, - "indexed": true, - "name": "previousOwner", - "nodeType": "VariableDeclaration", - "scope": 2760, - "src": "291:29:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2755, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "291:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2758, - "indexed": true, - "name": "newOwner", - "nodeType": "VariableDeclaration", - "scope": 2760, - "src": "322:24:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2757, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "322:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "290:57:16" - }, - "src": "264:84:16" - }, - { - "body": { - "id": 2768, - "nodeType": "Block", - "src": "488:29:16", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2763, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "494:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2764, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "502:3:16", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "502:10:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "494:18:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2767, - "nodeType": "ExpressionStatement", - "src": "494:18:16" - } - ] - }, - "documentation": "@dev The Ownable constructor sets the original `owner` of the contract to the sender\naccount.", - "id": 2769, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "Ownable", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2761, - "nodeType": "ParameterList", - "parameters": [], - "src": "485:2:16" - }, - "payable": false, - "returnParameters": { - "id": 2762, - "nodeType": "ParameterList", - "parameters": [], - "src": "488:0:16" - }, - "scope": 2806, - "src": "469:48:16", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2779, - "nodeType": "Block", - "src": "619:46:16", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2775, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2772, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "633:3:16", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2773, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "633:10:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2774, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "647:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "633:19:16", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2771, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "625:7:16", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2776, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "625:28:16", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2777, - "nodeType": "ExpressionStatement", - "src": "625:28:16" - }, - { - "id": 2778, - "nodeType": "PlaceholderStatement", - "src": "659:1:16" - } - ] - }, - "documentation": "@dev Throws if called by any account other than the owner.", - "id": 2780, - "name": "onlyOwner", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2770, - "nodeType": "ParameterList", - "parameters": [], - "src": "616:2:16" - }, - "src": "598:67:16", - "visibility": "internal" - }, - { - "body": { - "id": 2804, - "nodeType": "Block", - "src": "889:107:16", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2792, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2788, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2782, - "src": "903:8:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2790, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "923:1:16", - "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": 2789, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "915:7:16", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2791, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "915:10:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "903:22:16", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2787, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "895:7:16", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2793, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "895:31:16", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2794, - "nodeType": "ExpressionStatement", - "src": "895:31:16" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2796, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "953:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2797, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2782, - "src": "960:8:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2795, - "name": "OwnershipTransferred", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2760, - "src": "932:20:16", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2798, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "932:37:16", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2799, - "nodeType": "ExpressionStatement", - "src": "932:37:16" - }, - { - "expression": { - "argumentTypes": null, - "id": 2802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2800, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "975:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2801, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2782, - "src": "983:8:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "975:16:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2803, - "nodeType": "ExpressionStatement", - "src": "975:16:16" - } - ] - }, - "documentation": "@dev Allows the current owner to transfer control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", - "id": 2805, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2785, - "modifierName": { - "argumentTypes": null, - "id": 2784, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "872:9:16", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "872:9:16" - } - ], - "name": "transferOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2782, - "name": "newOwner", - "nodeType": "VariableDeclaration", - "scope": 2805, - "src": "854:16:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2781, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "854:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "853:18:16" - }, - "payable": false, - "returnParameters": { - "id": 2786, - "nodeType": "ParameterList", - "parameters": [], - "src": "889:0:16" - }, - "scope": 2806, - "src": "827:169:16", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2807, - "src": "217:782:16" - } - ], - "src": "0:1000:16" - }, - "legacyAST": { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "exportedSymbols": { - "Ownable": [ - 2806 - ] - }, - "id": 2807, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2752, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:16" - }, - { - "baseContracts": [], - "contractDependencies": [], - "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, - "id": 2806, - "linearizedBaseContracts": [ - 2806 - ], - "name": "Ownable", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2754, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2806, - "src": "238:20:16", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2753, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "238:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2760, - "name": "OwnershipTransferred", - "nodeType": "EventDefinition", - "parameters": { - "id": 2759, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2756, - "indexed": true, - "name": "previousOwner", - "nodeType": "VariableDeclaration", - "scope": 2760, - "src": "291:29:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2755, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "291:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2758, - "indexed": true, - "name": "newOwner", - "nodeType": "VariableDeclaration", - "scope": 2760, - "src": "322:24:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2757, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "322:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "290:57:16" - }, - "src": "264:84:16" - }, - { - "body": { - "id": 2768, - "nodeType": "Block", - "src": "488:29:16", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2763, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "494:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2764, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "502:3:16", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "502:10:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "494:18:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2767, - "nodeType": "ExpressionStatement", - "src": "494:18:16" - } - ] - }, - "documentation": "@dev The Ownable constructor sets the original `owner` of the contract to the sender\naccount.", - "id": 2769, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "Ownable", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2761, - "nodeType": "ParameterList", - "parameters": [], - "src": "485:2:16" - }, - "payable": false, - "returnParameters": { - "id": 2762, - "nodeType": "ParameterList", - "parameters": [], - "src": "488:0:16" - }, - "scope": 2806, - "src": "469:48:16", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2779, - "nodeType": "Block", - "src": "619:46:16", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2775, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2772, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "633:3:16", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2773, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "633:10:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2774, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "647:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "633:19:16", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2771, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "625:7:16", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2776, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "625:28:16", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2777, - "nodeType": "ExpressionStatement", - "src": "625:28:16" - }, - { - "id": 2778, - "nodeType": "PlaceholderStatement", - "src": "659:1:16" - } - ] - }, - "documentation": "@dev Throws if called by any account other than the owner.", - "id": 2780, - "name": "onlyOwner", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2770, - "nodeType": "ParameterList", - "parameters": [], - "src": "616:2:16" - }, - "src": "598:67:16", - "visibility": "internal" - }, - { - "body": { - "id": 2804, - "nodeType": "Block", - "src": "889:107:16", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2792, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2788, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2782, - "src": "903:8:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2790, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "923:1:16", - "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": 2789, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "915:7:16", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2791, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "915:10:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "903:22:16", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2787, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "895:7:16", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2793, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "895:31:16", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2794, - "nodeType": "ExpressionStatement", - "src": "895:31:16" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2796, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "953:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2797, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2782, - "src": "960:8:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2795, - "name": "OwnershipTransferred", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2760, - "src": "932:20:16", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2798, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "932:37:16", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2799, - "nodeType": "ExpressionStatement", - "src": "932:37:16" - }, - { - "expression": { - "argumentTypes": null, - "id": 2802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2800, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "975:5:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2801, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2782, - "src": "983:8:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "975:16:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2803, - "nodeType": "ExpressionStatement", - "src": "975:16:16" - } - ] - }, - "documentation": "@dev Allows the current owner to transfer control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", - "id": 2805, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2785, - "modifierName": { - "argumentTypes": null, - "id": 2784, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "872:9:16", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "872:9:16" - } - ], - "name": "transferOwnership", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2782, - "name": "newOwner", - "nodeType": "VariableDeclaration", - "scope": 2805, - "src": "854:16:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2781, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "854:7:16", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "853:18:16" - }, - "payable": false, - "returnParameters": { - "id": 2786, - "nodeType": "ParameterList", - "parameters": [], - "src": "889:0:16" - }, - "scope": 2806, - "src": "827:169:16", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2807, - "src": "217:782:16" - } - ], - "src": "0:1000:16" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.688Z" -} \ No newline at end of file +{"contractName":"Ownable","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610291806100606000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a8575b600080fd5b34801561005d57600080fd5b506100666100eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100b457600080fd5b506100e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610110565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561016b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156101a757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582090067046b17c22d1a16753fc182d09aa7040b1bbf9f0351a6b401b86754a48dc0029"} \ No newline at end of file diff --git a/build/contracts/PTIDistributor.json b/build/contracts/PTIDistributor.json index 6e68fa1..98e7b7c 100644 --- a/build/contracts/PTIDistributor.json +++ b/build/contracts/PTIDistributor.json @@ -1,6756 +1 @@ -{ - "contractName": "PTIDistributor", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "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" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "bytes32" - } - ], - "name": "isUsed", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "name": "_registry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_toAddress", - "type": "address" - }, - { - "indexed": false, - "name": "_amount", - "type": "uint256" - }, - { - "indexed": false, - "name": "_reason", - "type": "string" - } - ], - "name": "LogDistribute", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_toAddress", - "type": "address" - }, - { - "indexed": false, - "name": "_amount", - "type": "uint256" - }, - { - "indexed": false, - "name": "_reason", - "type": "string" - } - ], - "name": "LogDistributeTransferable", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_hashing", - "type": "bytes32" - } - ], - "name": "LogDebug", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_owner", - "type": "address" - } - ], - "name": "LogDebugOwner", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_toAddress", - "type": "address" - }, - { - "name": "_amount", - "type": "uint256" - }, - { - "name": "_salt", - "type": "bytes32" - }, - { - "name": "_reason", - "type": "string" - }, - { - "name": "_v", - "type": "uint8" - }, - { - "name": "_r", - "type": "bytes32" - }, - { - "name": "_s", - "type": "bytes32" - } - ], - "name": "distribute", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_toAddress", - "type": "address" - }, - { - "name": "_amount", - "type": "uint256" - }, - { - "name": "_salt", - "type": "bytes32" - }, - { - "name": "_reason", - "type": "string" - }, - { - "name": "_v", - "type": "uint8" - }, - { - "name": "_r", - "type": "bytes32" - }, - { - "name": "_s", - "type": "bytes32" - } - ], - "name": "checkOwnerPacked", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_hash", - "type": "bytes32" - }, - { - "name": "_v", - "type": "uint8" - }, - { - "name": "_r", - "type": "bytes32" - }, - { - "name": "_s", - "type": "bytes32" - } - ], - "name": "checkOwner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_toAddress", - "type": "address" - }, - { - "name": "_amount", - "type": "uint256" - }, - { - "name": "_salt", - "type": "bytes32" - }, - { - "name": "_reason", - "type": "string" - } - ], - "name": "checkHashing", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b506040516020806111b883398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506110b4806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610a69565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610b71565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610dd3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f13565b005b34801561045f57600080fd5b506104826004803603810190808035600019169060200190929190505050611068565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057c5780518252602082019150602081019050602083039250610557565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040518083805190602001908083835b60208310151561061d57805182526020820191506020810190506020830392506105f8565b6001836020036101000a03801982511681845116808217855250505050505090500182600019166000191681526020019250505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561075d57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af115801561073b573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561076857600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561085e57600080fd5b505af1158015610872573d6000803e3d6000fd5b505050506040513d602081101561088857600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561093e57600080fd5b505af1158015610952573d6000803e3d6000fd5b505050506040513d602081101561096857600080fd5b8101908080519060200190929190505050151561098457600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a20578082015181840152602081019050610a05565b50505050905090810190601f168015610a4d5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610af95780518252602082019150602081019050602083039250610ad4565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610c055780518252602082019150602081019050602083039250610be0565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040518083805190602001908083835b602083101515610ca65780518252602082019150602081019050602083039250610c81565b6001836020036101000a038019825116818451168082178552505050505050905001826000191660001916815260200192505050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610d7c573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040518083805190602001908083835b602083101515610e485780518252602082019150602081019050602083039250610e23565b6001836020036101000a03801982511681845116808217855250505050505090500182600019166000191681526020019250505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610efd573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f6e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610faa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a723058206d8f6a35fcd38597b60711c98851fec433f2ea5f37c69287752a3a217f6e3c650029", - "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610a69565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610b71565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610dd3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f13565b005b34801561045f57600080fd5b506104826004803603810190808035600019169060200190929190505050611068565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057c5780518252602082019150602081019050602083039250610557565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040518083805190602001908083835b60208310151561061d57805182526020820191506020810190506020830392506105f8565b6001836020036101000a03801982511681845116808217855250505050505090500182600019166000191681526020019250505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561075d57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af115801561073b573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561076857600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561085e57600080fd5b505af1158015610872573d6000803e3d6000fd5b505050506040513d602081101561088857600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561093e57600080fd5b505af1158015610952573d6000803e3d6000fd5b505050506040513d602081101561096857600080fd5b8101908080519060200190929190505050151561098457600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a20578082015181840152602081019050610a05565b50505050905090810190601f168015610a4d5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610af95780518252602082019150602081019050602083039250610ad4565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610c055780518252602082019150602081019050602083039250610be0565b6001836020036101000a038019825116818451168082178552505050505050905001945050505050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040518083805190602001908083835b602083101515610ca65780518252602082019150602081019050602083039250610c81565b6001836020036101000a038019825116818451168082178552505050505050905001826000191660001916815260200192505050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610d7c573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040518083805190602001908083835b602083101515610e485780518252602082019150602081019050602083039250610e23565b6001836020036101000a03801982511681845116808217855250505050505090500182600019166000191681526020019250505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610efd573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f6e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610faa57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a723058206d8f6a35fcd38597b60711c98851fec433f2ea5f37c69287752a3a217f6e3c650029", - "sourceMap": "141:2026:4:-;;;501:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;501:104:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;558:10:4;550:5;;:18;;;;;;;;;;;;;;;;;;589:9;578:8;;:20;;;;;;;;;;;;;;;;;;501:104;141:2026;;;;;;", - "deployedSourceMap": "141:2026:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;183:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;183:24:4;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;612:639:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;612:639:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1955:210;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1955:210:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1257:406;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1257:406:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1668:281;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1668:281:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;456:38:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;456:38:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;183:24;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;612:639:4:-;751:15;825:19;891:20;1061:18;779:10;791:7;800:5;807:7;769:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;769:46:4;;;;;;;;;;;;;;;;;;;751:64;;825:56;;;;;;;;;;;;;;;;;;;;924:6;932:7;914:26;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;914:26:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;891:49;;959:6;:13;966:5;959:13;;;;;;;;;;;;;;;;;;;;;;;;;;;958:14;:62;;;;;1015:5;;;;;;;;;;;976:44;;:35;986:12;1000:2;1004;1008;976:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;976:35:4;;;;;;;;:44;;;958:62;950:71;;;;;;;;1047:4;1031:6;:13;1038:5;1031:13;;;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;1095:8;;;;;;;;;;;:20;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1095:36:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1095:36:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1095:36:4;;;;;;;;;;;;;;;;1061:71;;1150:5;:14;;;1165:10;1177:7;1150:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1150:35:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1150:35:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1150:35:4;;;;;;;;;;;;;;;;1142:44;;;;;;;;1201:43;1215:10;1227:7;1236;1201:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1201:43:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;612:639;;;;;;;;;;;:::o;1955:210::-;2062:15;2090:10;2102:7;2111:5;2118:7;2080:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2080:46:4;;;;;;;;;;;;;;;;;;;2062:64;;2141:17;2150:7;2141:17;;;;;;;;;;;;;;;;;;;;;;;;1955:210;;;;;:::o;1257:406::-;1402:15;1476:19;1542:20;1430:10;1442:7;1451:5;1458:7;1420:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1420:46:4;;;;;;;;;;;;;;;;;;;1402:64;;1476:56;;;;;;;;;;;;;;;;;;;;1575:6;1583:7;1565:26;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1565:26:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;1542:49;;1606:50;1620:35;1630:12;1644:2;1648;1652;1620:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1620:35:4;;;;;;;;1606:50;;;;;;;;;;;;;;;;;;;;;;1257:406;;;;;;;;;;:::o;1668:281::-;1758:7;1777:19;1843:20;1777:56;;;;;;;;;;;;;;;;;;;;1876:6;1884:5;1866:24;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1866:24:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;1843:47;;1907:35;1917:12;1931:2;1935;1939;1907:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1907:35:4;;;;;;;;1900:42;;1668:281;;;;;;;;:::o;827:169:16:-;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;456:38:4:-;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\n\ncontract PTIDistributor is Ownable {\n\n Registry public registry;\n\n event LogDistribute(address _toAddress, uint _amount, string _reason);\n event LogDistributeTransferable(address _toAddress, uint _amount, string _reason);\n event LogDebug(bytes32 _hashing);\n event LogDebugOwner(address _owner);\n\n mapping(bytes32 => bool) public isUsed;\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n\n function distribute(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public {\n bytes32 message = keccak256(_toAddress, _amount, _salt, _reason);\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(prefix, message);\n require(!isUsed[_salt] && ecrecover(prefixedHash, _v, _r, _s) == owner);\n isUsed[_salt] = true;\n ParatiiToken token = ParatiiToken(registry.getContract(\"ParatiiToken\"));\n require(token.transfer(_toAddress, _amount));\n emit LogDistribute(_toAddress, _amount, _reason);\n }\n\n function checkOwnerPacked(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public {\n bytes32 message = keccak256(_toAddress, _amount, _salt, _reason);\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(prefix, message);\n emit LogDebugOwner(ecrecover(prefixedHash, _v, _r, _s));\n }\n function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) public view returns (address) {\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(prefix, _hash);\n return ecrecover(prefixedHash, _v, _r, _s);\n }\n\n function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) public {\n bytes32 hashing = keccak256(_toAddress, _amount, _salt, _reason);\n emit LogDebug(hashing);\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/PTIDistributor.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/PTIDistributor.sol", - "exportedSymbols": { - "PTIDistributor": [ - 833 - ] - }, - "id": 834, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 595, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:4" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 596, - "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 2807, - "src": "26:59:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 597, - "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 872, - "src": "86:28:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 598, - "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 1097, - "src": "115:24:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 599, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "168:7:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 600, - "nodeType": "InheritanceSpecifier", - "src": "168:7:4" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 833, - "linearizedBaseContracts": [ - 833, - 2806 - ], - "name": "PTIDistributor", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 602, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 833, - "src": "183:24:4", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 601, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "183:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 610, - "name": "LogDistribute", - "nodeType": "EventDefinition", - "parameters": { - "id": 609, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 604, - "indexed": false, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 610, - "src": "234:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 603, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "234:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 606, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 610, - "src": "254:12:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 605, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "254:4:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 608, - "indexed": false, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 610, - "src": "268:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 607, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "268:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "233:50:4" - }, - "src": "214:70:4" - }, - { - "anonymous": false, - "documentation": null, - "id": 618, - "name": "LogDistributeTransferable", - "nodeType": "EventDefinition", - "parameters": { - "id": 617, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 612, - "indexed": false, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 618, - "src": "321:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 611, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "321:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 614, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 618, - "src": "341:12:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 613, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "341:4:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 616, - "indexed": false, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 618, - "src": "355:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 615, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "355:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "320:50:4" - }, - "src": "289:82:4" - }, - { - "anonymous": false, - "documentation": null, - "id": 622, - "name": "LogDebug", - "nodeType": "EventDefinition", - "parameters": { - "id": 621, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 620, - "indexed": false, - "name": "_hashing", - "nodeType": "VariableDeclaration", - "scope": 622, - "src": "391:16:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 619, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "391:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "390:18:4" - }, - "src": "376:33:4" - }, - { - "anonymous": false, - "documentation": null, - "id": 626, - "name": "LogDebugOwner", - "nodeType": "EventDefinition", - "parameters": { - "id": 625, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 624, - "indexed": false, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 626, - "src": "434:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 623, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "434:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "433:16:4" - }, - "src": "414:36:4" - }, - { - "constant": false, - "id": 630, - "name": "isUsed", - "nodeType": "VariableDeclaration", - "scope": 833, - "src": "456:38:4", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "typeName": { - "id": 629, - "keyType": { - "id": 627, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "464:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "456:24:4", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "valueType": { - "id": 628, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "475:4:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 644, - "nodeType": "Block", - "src": "540:65:4", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 638, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 635, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "550:5:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 636, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "558:3:4", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "558:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "550:18:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 639, - "nodeType": "ExpressionStatement", - "src": "550:18:4" - }, - { - "expression": { - "argumentTypes": null, - "id": 642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 640, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 602, - "src": "578:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 641, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 632, - "src": "589:9:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "578:20:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 643, - "nodeType": "ExpressionStatement", - "src": "578:20:4" - } - ] - }, - "documentation": null, - "id": 645, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 633, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 632, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 645, - "src": "513:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 631, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "513:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "512:20:4" - }, - "payable": false, - "returnParameters": { - "id": 634, - "nodeType": "ParameterList", - "parameters": [], - "src": "540:0:4" - }, - "scope": 833, - "src": "501:104:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 727, - "nodeType": "Block", - "src": "741:510:4", - "statements": [ - { - "assignments": [ - 663 - ], - "declarations": [ - { - "constant": false, - "id": 663, - "name": "message", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "751:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 662, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "751:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 670, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 665, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "779:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 666, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "791:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 667, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "800:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 668, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "807:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 664, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "769:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "769:46:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "751:64:4" - }, - { - "assignments": [ - 672 - ], - "declarations": [ - { - "constant": false, - "id": 672, - "name": "prefix", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "825:19:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 671, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "825:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 674, - "initialValue": { - "argumentTypes": null, - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "847:34:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "825:56:4" - }, - { - "assignments": [ - 676 - ], - "declarations": [ - { - "constant": false, - "id": 676, - "name": "prefixedHash", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "891:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 675, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "891:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 681, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 678, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 672, - "src": "924:6:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "argumentTypes": null, - "id": 679, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "932:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 677, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "914:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "914:26:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "891:49:4" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 686, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "958:14:4", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 683, - "name": "isUsed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "959:6:4", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 685, - "indexExpression": { - "argumentTypes": null, - "id": 684, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "966:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "959:13:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 688, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 676, - "src": "986:12:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 689, - "name": "_v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "1000:2:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "argumentTypes": null, - "id": 690, - "name": "_r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 657, - "src": "1004:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 691, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "1008:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 687, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "976:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "976:35:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 693, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1015:5:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "976:44:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "958:62:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 682, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "950:7:4", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "950:71:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 697, - "nodeType": "ExpressionStatement", - "src": "950:71:4" - }, - { - "expression": { - "argumentTypes": null, - "id": 702, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 698, - "name": "isUsed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "1031:6:4", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 700, - "indexExpression": { - "argumentTypes": null, - "id": 699, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "1038:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1031:13:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 701, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1047:4:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "1031:20:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 703, - "nodeType": "ExpressionStatement", - "src": "1031:20:4" - }, - { - "assignments": [ - 705 - ], - "declarations": [ - { - "constant": false, - "id": 705, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "1061:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 704, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "1061:12:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 712, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", - "id": 709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1116:14:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 707, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 602, - "src": "1095:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 708, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1095:20:4", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1095:36:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 706, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1082:12:4", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1082:50:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1061:71:4" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 716, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1165:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 717, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1177:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 714, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 705, - "src": "1150:5:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "1150:14:4", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1150:35:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 713, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1142:7:4", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 719, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1142:44:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 720, - "nodeType": "ExpressionStatement", - "src": "1142:44:4" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 722, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1215:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 723, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1227:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 724, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "1236:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 721, - "name": "LogDistribute", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 610, - "src": "1201:13:4", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,uint256,string memory)" - } - }, - "id": 725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1201:43:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 726, - "nodeType": "EmitStatement", - "src": "1196:48:4" - } - ] - }, - "documentation": null, - "id": 728, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "distribute", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 660, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 647, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "632:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 646, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "632:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 649, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "652:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 648, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "652:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 651, - "name": "_salt", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "669:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 650, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "669:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 653, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "684:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 652, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "684:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 655, - "name": "_v", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "700:8:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 654, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "700:5:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 657, - "name": "_r", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "710:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 656, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "710:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 659, - "name": "_s", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "722:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 658, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "722:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "631:102:4" - }, - "payable": false, - "returnParameters": { - "id": 661, - "nodeType": "ParameterList", - "parameters": [], - "src": "741:0:4" - }, - "scope": 833, - "src": "612:639:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 774, - "nodeType": "Block", - "src": "1392:271:4", - "statements": [ - { - "assignments": [ - 746 - ], - "declarations": [ - { - "constant": false, - "id": 746, - "name": "message", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1402:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 745, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1402:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 753, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 748, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "1430:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 749, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 732, - "src": "1442:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 750, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 734, - "src": "1451:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 751, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "1458:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 747, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1420:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1420:46:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1402:64:4" - }, - { - "assignments": [ - 755 - ], - "declarations": [ - { - "constant": false, - "id": 755, - "name": "prefix", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1476:19:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 754, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1476:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 757, - "initialValue": { - "argumentTypes": null, - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 756, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1498:34:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1476:56:4" - }, - { - "assignments": [ - 759 - ], - "declarations": [ - { - "constant": false, - "id": 759, - "name": "prefixedHash", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1542:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 758, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1542:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 764, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 761, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "1575:6:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "argumentTypes": null, - "id": 762, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 746, - "src": "1583:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 760, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1565:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1565:26:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1542:49:4" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 767, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 759, - "src": "1630:12:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 768, - "name": "_v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 738, - "src": "1644:2:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "argumentTypes": null, - "id": 769, - "name": "_r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "1648:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 770, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "1652:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 766, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1620:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1620:35:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 765, - "name": "LogDebugOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "1606:13:4", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 772, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1606:50:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 773, - "nodeType": "EmitStatement", - "src": "1601:55:4" - } - ] - }, - "documentation": null, - "id": 775, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "checkOwnerPacked", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 743, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 730, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1283:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 729, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1283:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 732, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1303:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 731, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1303:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 734, - "name": "_salt", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1320:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 733, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1320:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 736, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1335:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 735, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1335:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 738, - "name": "_v", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1351:8:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 737, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1351:5:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 740, - "name": "_r", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1361:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 739, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1361:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 742, - "name": "_s", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1373:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 741, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1373:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1282:102:4" - }, - "payable": false, - "returnParameters": { - "id": 744, - "nodeType": "ParameterList", - "parameters": [], - "src": "1392:0:4" - }, - "scope": 833, - "src": "1257:406:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 806, - "nodeType": "Block", - "src": "1767:182:4", - "statements": [ - { - "assignments": [ - 789 - ], - "declarations": [ - { - "constant": false, - "id": 789, - "name": "prefix", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1777:19:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 788, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1777:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 791, - "initialValue": { - "argumentTypes": null, - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 790, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1799:34:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1777:56:4" - }, - { - "assignments": [ - 793 - ], - "declarations": [ - { - "constant": false, - "id": 793, - "name": "prefixedHash", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1843:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 792, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1843:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 798, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 795, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 789, - "src": "1876:6:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "argumentTypes": null, - "id": 796, - "name": "_hash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "1884:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 794, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1866:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 797, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1866:24:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1843:47:4" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 800, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 793, - "src": "1917:12:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 801, - "name": "_v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 779, - "src": "1931:2:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "argumentTypes": null, - "id": 802, - "name": "_r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 781, - "src": "1935:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 803, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 783, - "src": "1939:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 799, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1907:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1907:35:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 787, - "id": 805, - "nodeType": "Return", - "src": "1900:42:4" - } - ] - }, - "documentation": null, - "id": 807, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "checkOwner", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 784, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 777, - "name": "_hash", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1688:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 776, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1688:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 779, - "name": "_v", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1703:8:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 778, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1703:5:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 781, - "name": "_r", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1713:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 780, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1713:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 783, - "name": "_s", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1725:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 782, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1725:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1687:49:4" - }, - "payable": false, - "returnParameters": { - "id": 787, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 786, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1758:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 785, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1758:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1757:9:4" - }, - "scope": 833, - "src": "1668:281:4", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 831, - "nodeType": "Block", - "src": "2052:113:4", - "statements": [ - { - "assignments": [ - 819 - ], - "declarations": [ - { - "constant": false, - "id": 819, - "name": "hashing", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2062:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 818, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2062:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 826, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 821, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 809, - "src": "2090:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 822, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 811, - "src": "2102:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 823, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 813, - "src": "2111:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 824, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 815, - "src": "2118:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 820, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2080:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2080:46:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2062:64:4" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 828, - "name": "hashing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 819, - "src": "2150:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 827, - "name": "LogDebug", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 622, - "src": "2141:8:4", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", - "typeString": "function (bytes32)" - } - }, - "id": 829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2141:17:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 830, - "nodeType": "EmitStatement", - "src": "2136:22:4" - } - ] - }, - "documentation": null, - "id": 832, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "checkHashing", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 816, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 809, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1977:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 808, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1977:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 811, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1997:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 810, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1997:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 813, - "name": "_salt", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2014:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 812, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2014:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 815, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2029:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 814, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2029:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1976:68:4" - }, - "payable": false, - "returnParameters": { - "id": 817, - "nodeType": "ParameterList", - "parameters": [], - "src": "2052:0:4" - }, - "scope": 833, - "src": "1955:210:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 834, - "src": "141:2026:4" - } - ], - "src": "0:2168:4" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/PTIDistributor.sol", - "exportedSymbols": { - "PTIDistributor": [ - 833 - ] - }, - "id": 834, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 595, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:4" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 596, - "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 2807, - "src": "26:59:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 597, - "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 872, - "src": "86:28:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 598, - "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 1097, - "src": "115:24:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 599, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "168:7:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 600, - "nodeType": "InheritanceSpecifier", - "src": "168:7:4" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 833, - "linearizedBaseContracts": [ - 833, - 2806 - ], - "name": "PTIDistributor", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 602, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 833, - "src": "183:24:4", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 601, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "183:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 610, - "name": "LogDistribute", - "nodeType": "EventDefinition", - "parameters": { - "id": 609, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 604, - "indexed": false, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 610, - "src": "234:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 603, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "234:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 606, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 610, - "src": "254:12:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 605, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "254:4:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 608, - "indexed": false, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 610, - "src": "268:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 607, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "268:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "233:50:4" - }, - "src": "214:70:4" - }, - { - "anonymous": false, - "documentation": null, - "id": 618, - "name": "LogDistributeTransferable", - "nodeType": "EventDefinition", - "parameters": { - "id": 617, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 612, - "indexed": false, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 618, - "src": "321:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 611, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "321:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 614, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 618, - "src": "341:12:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 613, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "341:4:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 616, - "indexed": false, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 618, - "src": "355:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 615, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "355:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "320:50:4" - }, - "src": "289:82:4" - }, - { - "anonymous": false, - "documentation": null, - "id": 622, - "name": "LogDebug", - "nodeType": "EventDefinition", - "parameters": { - "id": 621, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 620, - "indexed": false, - "name": "_hashing", - "nodeType": "VariableDeclaration", - "scope": 622, - "src": "391:16:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 619, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "391:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "390:18:4" - }, - "src": "376:33:4" - }, - { - "anonymous": false, - "documentation": null, - "id": 626, - "name": "LogDebugOwner", - "nodeType": "EventDefinition", - "parameters": { - "id": 625, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 624, - "indexed": false, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 626, - "src": "434:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 623, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "434:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "433:16:4" - }, - "src": "414:36:4" - }, - { - "constant": false, - "id": 630, - "name": "isUsed", - "nodeType": "VariableDeclaration", - "scope": 833, - "src": "456:38:4", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "typeName": { - "id": 629, - "keyType": { - "id": 627, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "464:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "456:24:4", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - }, - "valueType": { - "id": 628, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "475:4:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 644, - "nodeType": "Block", - "src": "540:65:4", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 638, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 635, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "550:5:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 636, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "558:3:4", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "558:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "550:18:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 639, - "nodeType": "ExpressionStatement", - "src": "550:18:4" - }, - { - "expression": { - "argumentTypes": null, - "id": 642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 640, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 602, - "src": "578:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 641, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 632, - "src": "589:9:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "578:20:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 643, - "nodeType": "ExpressionStatement", - "src": "578:20:4" - } - ] - }, - "documentation": null, - "id": 645, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 633, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 632, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 645, - "src": "513:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 631, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "513:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "512:20:4" - }, - "payable": false, - "returnParameters": { - "id": 634, - "nodeType": "ParameterList", - "parameters": [], - "src": "540:0:4" - }, - "scope": 833, - "src": "501:104:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 727, - "nodeType": "Block", - "src": "741:510:4", - "statements": [ - { - "assignments": [ - 663 - ], - "declarations": [ - { - "constant": false, - "id": 663, - "name": "message", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "751:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 662, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "751:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 670, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 665, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "779:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 666, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "791:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 667, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "800:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 668, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "807:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 664, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "769:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "769:46:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "751:64:4" - }, - { - "assignments": [ - 672 - ], - "declarations": [ - { - "constant": false, - "id": 672, - "name": "prefix", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "825:19:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 671, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "825:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 674, - "initialValue": { - "argumentTypes": null, - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "847:34:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "825:56:4" - }, - { - "assignments": [ - 676 - ], - "declarations": [ - { - "constant": false, - "id": 676, - "name": "prefixedHash", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "891:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 675, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "891:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 681, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 678, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 672, - "src": "924:6:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "argumentTypes": null, - "id": 679, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "932:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 677, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "914:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "914:26:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "891:49:4" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 686, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "958:14:4", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 683, - "name": "isUsed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "959:6:4", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 685, - "indexExpression": { - "argumentTypes": null, - "id": 684, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "966:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "959:13:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 688, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 676, - "src": "986:12:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 689, - "name": "_v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "1000:2:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "argumentTypes": null, - "id": 690, - "name": "_r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 657, - "src": "1004:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 691, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "1008:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 687, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "976:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "976:35:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 693, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1015:5:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "976:44:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "958:62:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 682, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "950:7:4", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "950:71:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 697, - "nodeType": "ExpressionStatement", - "src": "950:71:4" - }, - { - "expression": { - "argumentTypes": null, - "id": 702, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 698, - "name": "isUsed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "1031:6:4", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", - "typeString": "mapping(bytes32 => bool)" - } - }, - "id": 700, - "indexExpression": { - "argumentTypes": null, - "id": 699, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "1038:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1031:13:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 701, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1047:4:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "1031:20:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 703, - "nodeType": "ExpressionStatement", - "src": "1031:20:4" - }, - { - "assignments": [ - 705 - ], - "declarations": [ - { - "constant": false, - "id": 705, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "1061:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 704, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "1061:12:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 712, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", - "id": 709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1116:14:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 707, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 602, - "src": "1095:8:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 708, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1095:20:4", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1095:36:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 706, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1082:12:4", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1082:50:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1061:71:4" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 716, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1165:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 717, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1177:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 714, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 705, - "src": "1150:5:4", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "1150:14:4", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1150:35:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 713, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1142:7:4", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 719, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1142:44:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 720, - "nodeType": "ExpressionStatement", - "src": "1142:44:4" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 722, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1215:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 723, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1227:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 724, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "1236:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 721, - "name": "LogDistribute", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 610, - "src": "1201:13:4", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,uint256,string memory)" - } - }, - "id": 725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1201:43:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 726, - "nodeType": "EmitStatement", - "src": "1196:48:4" - } - ] - }, - "documentation": null, - "id": 728, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "distribute", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 660, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 647, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "632:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 646, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "632:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 649, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "652:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 648, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "652:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 651, - "name": "_salt", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "669:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 650, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "669:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 653, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "684:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 652, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "684:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 655, - "name": "_v", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "700:8:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 654, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "700:5:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 657, - "name": "_r", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "710:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 656, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "710:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 659, - "name": "_s", - "nodeType": "VariableDeclaration", - "scope": 728, - "src": "722:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 658, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "722:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "631:102:4" - }, - "payable": false, - "returnParameters": { - "id": 661, - "nodeType": "ParameterList", - "parameters": [], - "src": "741:0:4" - }, - "scope": 833, - "src": "612:639:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 774, - "nodeType": "Block", - "src": "1392:271:4", - "statements": [ - { - "assignments": [ - 746 - ], - "declarations": [ - { - "constant": false, - "id": 746, - "name": "message", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1402:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 745, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1402:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 753, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 748, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 730, - "src": "1430:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 749, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 732, - "src": "1442:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 750, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 734, - "src": "1451:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 751, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "1458:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 747, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1420:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1420:46:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1402:64:4" - }, - { - "assignments": [ - 755 - ], - "declarations": [ - { - "constant": false, - "id": 755, - "name": "prefix", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1476:19:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 754, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1476:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 757, - "initialValue": { - "argumentTypes": null, - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 756, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1498:34:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1476:56:4" - }, - { - "assignments": [ - 759 - ], - "declarations": [ - { - "constant": false, - "id": 759, - "name": "prefixedHash", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1542:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 758, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1542:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 764, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 761, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "1575:6:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "argumentTypes": null, - "id": 762, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 746, - "src": "1583:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 760, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1565:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1565:26:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1542:49:4" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 767, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 759, - "src": "1630:12:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 768, - "name": "_v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 738, - "src": "1644:2:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "argumentTypes": null, - "id": 769, - "name": "_r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "1648:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 770, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "1652:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 766, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1620:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1620:35:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 765, - "name": "LogDebugOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "1606:13:4", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 772, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1606:50:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 773, - "nodeType": "EmitStatement", - "src": "1601:55:4" - } - ] - }, - "documentation": null, - "id": 775, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "checkOwnerPacked", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 743, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 730, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1283:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 729, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1283:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 732, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1303:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 731, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1303:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 734, - "name": "_salt", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1320:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 733, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1320:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 736, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1335:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 735, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1335:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 738, - "name": "_v", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1351:8:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 737, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1351:5:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 740, - "name": "_r", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1361:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 739, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1361:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 742, - "name": "_s", - "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1373:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 741, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1373:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1282:102:4" - }, - "payable": false, - "returnParameters": { - "id": 744, - "nodeType": "ParameterList", - "parameters": [], - "src": "1392:0:4" - }, - "scope": 833, - "src": "1257:406:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 806, - "nodeType": "Block", - "src": "1767:182:4", - "statements": [ - { - "assignments": [ - 789 - ], - "declarations": [ - { - "constant": false, - "id": 789, - "name": "prefix", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1777:19:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 788, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1777:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 791, - "initialValue": { - "argumentTypes": null, - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 790, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1799:34:4", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1777:56:4" - }, - { - "assignments": [ - 793 - ], - "declarations": [ - { - "constant": false, - "id": 793, - "name": "prefixedHash", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1843:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 792, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1843:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 798, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 795, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 789, - "src": "1876:6:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "argumentTypes": null, - "id": 796, - "name": "_hash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "1884:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 794, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1866:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 797, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1866:24:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1843:47:4" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 800, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 793, - "src": "1917:12:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 801, - "name": "_v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 779, - "src": "1931:2:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "argumentTypes": null, - "id": 802, - "name": "_r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 781, - "src": "1935:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 803, - "name": "_s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 783, - "src": "1939:2:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 799, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1907:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1907:35:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 787, - "id": 805, - "nodeType": "Return", - "src": "1900:42:4" - } - ] - }, - "documentation": null, - "id": 807, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "checkOwner", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 784, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 777, - "name": "_hash", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1688:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 776, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1688:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 779, - "name": "_v", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1703:8:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 778, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1703:5:4", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 781, - "name": "_r", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1713:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 780, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1713:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 783, - "name": "_s", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1725:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 782, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1725:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1687:49:4" - }, - "payable": false, - "returnParameters": { - "id": 787, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 786, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1758:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 785, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1758:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1757:9:4" - }, - "scope": 833, - "src": "1668:281:4", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 831, - "nodeType": "Block", - "src": "2052:113:4", - "statements": [ - { - "assignments": [ - 819 - ], - "declarations": [ - { - "constant": false, - "id": 819, - "name": "hashing", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2062:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 818, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2062:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 826, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 821, - "name": "_toAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 809, - "src": "2090:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 822, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 811, - "src": "2102:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 823, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 813, - "src": "2111:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 824, - "name": "_reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 815, - "src": "2118:7:4", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 820, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2080:9:4", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2080:46:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2062:64:4" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 828, - "name": "hashing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 819, - "src": "2150:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 827, - "name": "LogDebug", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 622, - "src": "2141:8:4", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", - "typeString": "function (bytes32)" - } - }, - "id": 829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2141:17:4", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 830, - "nodeType": "EmitStatement", - "src": "2136:22:4" - } - ] - }, - "documentation": null, - "id": 832, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "checkHashing", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 816, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 809, - "name": "_toAddress", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1977:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 808, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1977:7:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 811, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1997:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 810, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1997:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 813, - "name": "_salt", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2014:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 812, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2014:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 815, - "name": "_reason", - "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2029:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 814, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2029:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1976:68:4" - }, - "payable": false, - "returnParameters": { - "id": 817, - "nodeType": "ParameterList", - "parameters": [], - "src": "2052:0:4" - }, - "scope": 833, - "src": "1955:210:4", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 834, - "src": "141:2026:4" - } - ], - "src": "0:2168:4" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.671Z" -} \ No newline at end of file +{"contractName":"PTIDistributor","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"isUsed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistribute","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistributeTransferable","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashing","type":"bytes32"}],"name":"LogDebug","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_owner","type":"address"}],"name":"LogDebugOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"distribute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwnerPacked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_hash","type":"bytes32"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"}],"name":"checkHashing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061144083398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061133c806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b41565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610cb5565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610fef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119b565b005b34801561045f57600080fd5b5061048260048036038101908080356000191690602001909291905050506112f0565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057f578051825260208201915060208101905060208303925061055a565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156105eb57805182526020820191506020810190506020830392506105c6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040516020018083805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561070457805182526020820191506020810190506020830392506106df565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561083557506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610813573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561084057600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561093657600080fd5b505af115801561094a573d6000803e3d6000fd5b505050506040513d602081101561096057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a1657600080fd5b505af1158015610a2a573d6000803e3d6000fd5b505050506040513d6020811015610a4057600080fd5b81019080805190602001909291905050501515610a5c57600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af8578082015181840152602081019050610add565b50505050905090810190601f168015610b255780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610bd45780518252602082019150602081019050602083039250610baf565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610c405780518252602082019150602081019050602083039250610c1b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610d4c5780518252602082019150602081019050602083039250610d27565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610db85780518252602082019150602081019050602083039250610d93565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040516020018083805190602001908083835b602083101515610e595780518252602082019150602081019050602083039250610e34565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610ed15780518252602082019150602081019050602083039250610eac565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610f98573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040516020018083805190602001908083835b6020831015156110675780518252602082019150602081019050602083039250611042565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b6020831015156110df57805182526020820191506020810190506020830392506110ba565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015611185573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561123257600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a72305820d34ceeb25ecf9e1d8958a022a4af7e4dbd072ef329fb6f86213241c0bedf53010029"} \ No newline at end of file diff --git a/build/contracts/ParatiiToken.json b/build/contracts/ParatiiToken.json index 820cfe8..3067a0a 100644 --- a/build/contracts/ParatiiToken.json +++ b/build/contracts/ParatiiToken.json @@ -1,1315 +1 @@ -{ - "contractName": "ParatiiToken", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "name", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_from", - "type": "address" - }, - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "INITIAL_SUPPLY", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "decimals", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseApproval", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "name": "balance", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "symbol", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "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": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_addedValue", - "type": "uint256" - } - ], - "name": "increaseApproval", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - }, - { - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "name": "remaining", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "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" - } - ], - "bytecode": "0x60806040526040805190810160405280600781526020017f5061726174696900000000000000000000000000000000000000000000000000815250600390805190602001906200005192919062000117565b506040805190810160405280600381526020017f5054490000000000000000000000000000000000000000000000000000000000815250600490805190602001906200009f92919062000117565b506012600555600554600a0a6301406f4002600655348015620000c157600080fd5b50600654600081905550600654600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001c6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200015a57805160ff19168380011785556200018b565b828001600101855582156200018b579182015b828111156200018a5782518255916020019190600101906200016d565b5b5090506200019a91906200019e565b5090565b620001c391905b80821115620001bf576000816000905550600101620001a5565b5090565b90565b61120980620001d66000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a72305820916e98a242ec9ef0ec70c02ea47906137218bd8aff59ed9ce8eb697a23ab35d60029", - "deployedBytecode": "0x6080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a72305820916e98a242ec9ef0ec70c02ea47906137218bd8aff59ed9ce8eb697a23ab35d60029", - "sourceMap": "89:323:5:-;;;135:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;171:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;228:2;205:25;;281:8;;277:2;:12;265:8;:25;236:54;;297:113;8:9:-1;5:2;;;30:1;27;20:12;5:2;297:113:5;342:14;;328:11;:28;;;;389:14;;366:8;:20;375:10;366:20;;;;;;;;;;;;;;;:37;;;;89:323;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", - "deployedSourceMap": "89:323:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;135:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;135:30:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;135:30:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1884:183:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1884:183:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;179:26:19;;;;;;;;;;;;;;;;;;;;;;;728:533:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;728:533:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;236:54:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;236:54:5;;;;;;;;;;;;;;;;;;;;;;;205:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;205:25:5;;;;;;;;;;;;;;;;;;;;;;;3033:404:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3033:404:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;973:111:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;973:111:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;171:28:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;171:28:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;171:28:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:334:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:334:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2766:263:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2766:263:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2386:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2386:140:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;135:30:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1884:183:20:-;1951:4;1995:6;1963:7;:19;1971:10;1963:19;;;;;;;;;;;;;;;:29;1983:8;1963:29;;;;;;;;;;;;;;;:38;;;;2028:8;2007:38;;2016:10;2007:38;;;2038:6;2007:38;;;;;;;;;;;;;;;;;;2058:4;2051:11;;1884:183;;;;:::o;179:26:19:-;;;;:::o;728:533:20:-;810:4;855:18;845:1;830:17;;:3;:17;;;;822:26;;;;;;;;876:7;:14;884:5;876:14;;;;;;;;;;;;;;;:26;891:10;876:26;;;;;;;;;;;;;;;;855:47;;1074:27;1094:6;1074:8;:15;1083:5;1074:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;1056:8;:15;1065:5;1056:15;;;;;;;;;;;;;;;:45;;;;1123:25;1141:6;1123:8;:13;1132:3;1123:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;1107:8;:13;1116:3;1107:13;;;;;;;;;;;;;;;:41;;;;1183:22;1198:6;1183:10;:14;;:22;;;;:::i;:::-;1154:7;:14;1162:5;1154:14;;;;;;;;;;;;;;;:26;1169:10;1154:26;;;;;;;;;;;;;;;:51;;;;1227:3;1211:28;;1220:5;1211:28;;;1232:6;1211:28;;;;;;;;;;;;;;;;;;1252:4;1245:11;;728:533;;;;;;:::o;236:54:5:-;;;;:::o;205:25::-;;;;:::o;3033:404:20:-;3114:12;3134:13;3150:7;:19;3158:10;3150:19;;;;;;;;;;;;;;;:29;3170:8;3150:29;;;;;;;;;;;;;;;;3134:45;;3208:8;3189:16;:27;3185:164;;;3258:1;3226:7;:19;3234:10;3226:19;;;;;;;;;;;;;;;:29;3246:8;3226:29;;;;;;;;;;;;;;;:33;;;;3185:164;;;3312:30;3325:16;3312:8;:12;;:30;;;;:::i;:::-;3280:7;:19;3288:10;3280:19;;;;;;;;;;;;;;;:29;3300:8;3280:29;;;;;;;;;;;;;;;:62;;;;3185:164;3375:8;3354:61;;3363:10;3354:61;;;3385:7;:19;3393:10;3385:19;;;;;;;;;;;;;;;:29;3405:8;3385:29;;;;;;;;;;;;;;;;3354:61;;;;;;;;;;;;;;;;;;3428:4;3421:11;;3033:404;;;;;:::o;973:111:17:-;1033:15;1063:8;:16;1072:6;1063:16;;;;;;;;;;;;;;;;1056:23;;973:111;;;:::o;171:28:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;437:334:17:-;500:4;535:1;520:17;;:3;:17;;;;512:26;;;;;;;;631:32;656:6;631:8;:20;640:10;631:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;608:8;:20;617:10;608:20;;;;;;;;;;;;;;;:55;;;;685:25;703:6;685:8;:13;694:3;685:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;669:8;:13;678:3;669:13;;;;;;;;;;;;;;;:41;;;;737:3;716:33;;725:10;716:33;;;742:6;716:33;;;;;;;;;;;;;;;;;;762:4;755:11;;437:334;;;;:::o;2766:263:20:-;2842:12;2894:46;2928:11;2894:7;:19;2902:10;2894:19;;;;;;;;;;;;;;;:29;2914:8;2894:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;2862:7;:19;2870:10;2862:19;;;;;;;;;;;;;;;:29;2882:8;2862:29;;;;;;;;;;;;;;;:78;;;;2967:8;2946:61;;2955:10;2946:61;;;2977:7;:19;2985:10;2977:19;;;;;;;;;;;;;;;:29;2997:8;2977:29;;;;;;;;;;;;;;;;2946:61;;;;;;;;;;;;;;;;;;3020:4;3013:11;;2766:263;;;;:::o;2386:140::-;2464:17;2496:7;:15;2504:6;2496:15;;;;;;;;;;;;;;;:25;2512:8;2496:25;;;;;;;;;;;;;;;;2489:32;;2386:140;;;;:::o;562:114:15:-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;680:133::-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/token/StandardToken.sol\";\n\ncontract ParatiiToken is StandardToken {\n\n string public name = \"Paratii\";\n string public symbol = \"PTI\";\n uint public decimals = 18;\n uint public INITIAL_SUPPLY = 21000000 * (10**decimals);\n\n constructor() public {\n totalSupply = INITIAL_SUPPLY;\n balances[msg.sender] = INITIAL_SUPPLY;\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "exportedSymbols": { - "ParatiiToken": [ - 871 - ] - }, - "id": 872, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 835, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:5" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", - "file": "zeppelin-solidity/contracts/token/StandardToken.sol", - "id": 836, - "nodeType": "ImportDirective", - "scope": 872, - "sourceUnit": 3187, - "src": "26:61:5", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 837, - "name": "StandardToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3186, - "src": "114:13:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_StandardToken_$3186", - "typeString": "contract StandardToken" - } - }, - "id": 838, - "nodeType": "InheritanceSpecifier", - "src": "114:13:5" - } - ], - "contractDependencies": [ - 2883, - 2926, - 2955, - 3186 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 871, - "linearizedBaseContracts": [ - 871, - 3186, - 2883, - 2926, - 2955 - ], - "name": "ParatiiToken", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 841, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "135:30:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 839, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "135:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "50617261746969", - "id": 840, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "156:9:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ae93c4febd7140468a917d366b33edbb517b06fa4f303d78c9ec21dec3acef38", - "typeString": "literal_string \"Paratii\"" - }, - "value": "Paratii" - }, - "visibility": "public" - }, - { - "constant": false, - "id": 844, - "name": "symbol", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "171:28:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 842, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "171:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "505449", - "id": 843, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "194:5:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6340d7c1aa7a1d2ab6a2b0be0f6ebad7944f0a13973776467e5e331679d42bf7", - "typeString": "literal_string \"PTI\"" - }, - "value": "PTI" - }, - "visibility": "public" - }, - { - "constant": false, - "id": 847, - "name": "decimals", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "205:25:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 845, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "205:4:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "3138", - "id": 846, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "228:2:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_18_by_1", - "typeString": "int_const 18" - }, - "value": "18" - }, - "visibility": "public" - }, - { - "constant": false, - "id": 855, - "name": "INITIAL_SUPPLY", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "236:54:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 848, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "236:4:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 854, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "3231303030303030", - "id": 849, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "265:8:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21000000_by_1", - "typeString": "int_const 21000000" - }, - "value": "21000000" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "3130", - "id": 850, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "277:2:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "argumentTypes": null, - "id": 851, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 847, - "src": "281:8:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "277:12:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 853, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "276:14:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "265:25:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 869, - "nodeType": "Block", - "src": "318:92:5", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 858, - "name": "totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2930, - "src": "328:11:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 859, - "name": "INITIAL_SUPPLY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 855, - "src": "342:14:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "328:28:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 861, - "nodeType": "ExpressionStatement", - "src": "328:28:5" - }, - { - "expression": { - "argumentTypes": null, - "id": 867, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 862, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "366:8:5", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 865, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 863, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "375:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "375:10:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "366:20:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 866, - "name": "INITIAL_SUPPLY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 855, - "src": "389:14:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "366:37:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 868, - "nodeType": "ExpressionStatement", - "src": "366:37:5" - } - ] - }, - "documentation": null, - "id": 870, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 856, - "nodeType": "ParameterList", - "parameters": [], - "src": "308:2:5" - }, - "payable": false, - "returnParameters": { - "id": 857, - "nodeType": "ParameterList", - "parameters": [], - "src": "318:0:5" - }, - "scope": 871, - "src": "297:113:5", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 872, - "src": "89:323:5" - } - ], - "src": "0:413:5" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "exportedSymbols": { - "ParatiiToken": [ - 871 - ] - }, - "id": 872, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 835, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:5" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", - "file": "zeppelin-solidity/contracts/token/StandardToken.sol", - "id": 836, - "nodeType": "ImportDirective", - "scope": 872, - "sourceUnit": 3187, - "src": "26:61:5", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 837, - "name": "StandardToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3186, - "src": "114:13:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_StandardToken_$3186", - "typeString": "contract StandardToken" - } - }, - "id": 838, - "nodeType": "InheritanceSpecifier", - "src": "114:13:5" - } - ], - "contractDependencies": [ - 2883, - 2926, - 2955, - 3186 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 871, - "linearizedBaseContracts": [ - 871, - 3186, - 2883, - 2926, - 2955 - ], - "name": "ParatiiToken", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 841, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "135:30:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 839, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "135:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "50617261746969", - "id": 840, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "156:9:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ae93c4febd7140468a917d366b33edbb517b06fa4f303d78c9ec21dec3acef38", - "typeString": "literal_string \"Paratii\"" - }, - "value": "Paratii" - }, - "visibility": "public" - }, - { - "constant": false, - "id": 844, - "name": "symbol", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "171:28:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 842, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "171:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "505449", - "id": 843, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "194:5:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6340d7c1aa7a1d2ab6a2b0be0f6ebad7944f0a13973776467e5e331679d42bf7", - "typeString": "literal_string \"PTI\"" - }, - "value": "PTI" - }, - "visibility": "public" - }, - { - "constant": false, - "id": 847, - "name": "decimals", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "205:25:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 845, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "205:4:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "hexValue": "3138", - "id": 846, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "228:2:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_18_by_1", - "typeString": "int_const 18" - }, - "value": "18" - }, - "visibility": "public" - }, - { - "constant": false, - "id": 855, - "name": "INITIAL_SUPPLY", - "nodeType": "VariableDeclaration", - "scope": 871, - "src": "236:54:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 848, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "236:4:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 854, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "3231303030303030", - "id": 849, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "265:8:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21000000_by_1", - "typeString": "int_const 21000000" - }, - "value": "21000000" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "3130", - "id": 850, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "277:2:5", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "argumentTypes": null, - "id": 851, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 847, - "src": "281:8:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "277:12:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 853, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "276:14:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "265:25:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 869, - "nodeType": "Block", - "src": "318:92:5", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 858, - "name": "totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2930, - "src": "328:11:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 859, - "name": "INITIAL_SUPPLY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 855, - "src": "342:14:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "328:28:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 861, - "nodeType": "ExpressionStatement", - "src": "328:28:5" - }, - { - "expression": { - "argumentTypes": null, - "id": 867, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 862, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "366:8:5", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 865, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 863, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "375:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "375:10:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "366:20:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 866, - "name": "INITIAL_SUPPLY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 855, - "src": "389:14:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "366:37:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 868, - "nodeType": "ExpressionStatement", - "src": "366:37:5" - } - ] - }, - "documentation": null, - "id": 870, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 856, - "nodeType": "ParameterList", - "parameters": [], - "src": "308:2:5" - }, - "payable": false, - "returnParameters": { - "id": 857, - "nodeType": "ParameterList", - "parameters": [], - "src": "318:0:5" - }, - "scope": 871, - "src": "297:113:5", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 872, - "src": "89:323:5" - } - ], - "src": "0:413:5" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.675Z" -} \ No newline at end of file +{"contractName":"ParatiiToken","abi":[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"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":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"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"}],"bytecode":"0x60806040526040805190810160405280600781526020017f5061726174696900000000000000000000000000000000000000000000000000815250600390805190602001906200005192919062000117565b506040805190810160405280600381526020017f5054490000000000000000000000000000000000000000000000000000000000815250600490805190602001906200009f92919062000117565b506012600555600554600a0a6301406f4002600655348015620000c157600080fd5b50600654600081905550600654600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001c6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200015a57805160ff19168380011785556200018b565b828001600101855582156200018b579182015b828111156200018a5782518255916020019190600101906200016d565b5b5090506200019a91906200019e565b5090565b620001c391905b80821115620001bf576000816000905550600101620001a5565b5090565b90565b61120980620001d66000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a72305820166577d48b5550aa993b27daf7e4b0d5fdd241db81721f272463b89d637e924a0029"} \ No newline at end of file diff --git a/build/contracts/Registry.json b/build/contracts/Registry.json index 84eb462..55e5566 100644 --- a/build/contracts/Registry.json +++ b/build/contracts/Registry.json @@ -1,5796 +1 @@ -{ - "contractName": "Registry", - "abi": [ - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "bytes32" - } - ], - "name": "strings", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "bytes32" - } - ], - "name": "numbers", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "bytes32" - } - ], - "name": "contracts", - "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": false, - "name": "_name", - "type": "string" - }, - { - "indexed": false, - "name": "_address", - "type": "address" - } - ], - "name": "LogRegisterAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_name", - "type": "string" - } - ], - "name": "LogUnregisterAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_name", - "type": "string" - }, - { - "indexed": false, - "name": "_number", - "type": "uint256" - } - ], - "name": "LogRegisterUint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_name", - "type": "string" - } - ], - "name": "LogUnregisterUint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_name", - "type": "string" - }, - { - "indexed": false, - "name": "_string", - "type": "string" - } - ], - "name": "LogRegisterString", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_name", - "type": "string" - } - ], - "name": "LogUnregisterString", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_name", - "type": "string" - }, - { - "name": "_address", - "type": "address" - } - ], - "name": "registerAddress", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_name", - "type": "string" - } - ], - "name": "unregisterAddress", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_name", - "type": "string" - } - ], - "name": "getContract", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_name", - "type": "string" - }, - { - "name": "_number", - "type": "uint256" - } - ], - "name": "registerUint", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_name", - "type": "string" - } - ], - "name": "unregisterUint", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_name", - "type": "string" - } - ], - "name": "getUint", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_name", - "type": "string" - }, - { - "name": "_string", - "type": "string" - } - ], - "name": "registerString", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_name", - "type": "string" - } - ], - "name": "unregisterString", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_name", - "type": "string" - } - ], - "name": "getString", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061179a806100a06000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610957565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109fe565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b79565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610c00565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610cb0565b005b3480156103f657600080fd5b506103ff610e35565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e5a565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fdd565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110fc565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506112e7565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506114e1565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506114f9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061152c565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040518082805190602001908083835b602083101515610852578051825260208201915060208101905060208303925061082d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561091a5780820151818401526020810190506108ff565b50505050905090810190601f1680156109475780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040518082805190602001908083835b602083101515610993578051825260208201915060208101905060208303925061096e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a5957600080fd5b60026000826040518082805190602001908083835b602083101515610a935780518252602082019150602081019050602083039250610a6e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b3c578082015181840152602081019050610b21565b50505050905090810190601f168015610b695780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040518082805190602001908083835b602083101515610bb55780518252602082019150602081019050602083039250610b90565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ca85780601f10610c7d57610100808354040283529160200191610ca8565b820191906000526020600020905b815481529060010190602001808311610c8b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d0b57600080fd5b8060026000846040518082805190602001908083835b602083101515610d465780518252602082019150602081019050602083039250610d21565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610df6578082015181840152602081019050610ddb565b50505050905090810190601f168015610e235780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610eb557600080fd5b60036000826040518082805190602001908083835b602083101515610eef5780518252602082019150602081019050602083039250610eca565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000206000610f3e9190611681565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610fa0578082015181840152602081019050610f85565b50505050905090810190601f168015610fcd5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040518082805190602001908083835b6020831015156110195780518252602082019150602081019050602083039250610ff4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f05780601f106110c5576101008083540402835291602001916110f0565b820191906000526020600020905b8154815290600101906020018083116110d357829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115757600080fd5b8060016000846040518082805190602001908083835b602083101515611192578051825260208201915060208101905060208303925061116d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156112a857808201518184015260208101905061128d565b50505050905090810190601f1680156112d55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561134257600080fd5b8060036000846040518082805190602001908083835b60208310151561137d5780518252602082019150602081019050602083039250611358565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090805190602001906113d39291906116c9565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b8381101561143b578082015181840152602081019050611420565b50505050905090810190601f1680156114685780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b838110156114a1578082015181840152602081019050611486565b50505050905090810190601f1680156114ce5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561158757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156115c357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f106116a757506116c6565b601f0160209004906000526020600020908101906116c59190611749565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061170a57805160ff1916838001178555611738565b82800160010185558215611738579182015b8281111561173757825182559160200191906001019061171c565b5b5090506117459190611749565b5090565b61176b91905b8082111561176757600081600090555060010161174f565b5090565b905600a165627a7a72305820ca7b168b5023863ead4a5235698fff8c753f79c003e4719f6644795aaff015780029", - "deployedBytecode": "0x6080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610957565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109fe565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b79565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610c00565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610cb0565b005b3480156103f657600080fd5b506103ff610e35565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e5a565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fdd565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110fc565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506112e7565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506114e1565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506114f9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061152c565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040518082805190602001908083835b602083101515610852578051825260208201915060208101905060208303925061082d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561091a5780820151818401526020810190506108ff565b50505050905090810190601f1680156109475780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040518082805190602001908083835b602083101515610993578051825260208201915060208101905060208303925061096e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a5957600080fd5b60026000826040518082805190602001908083835b602083101515610a935780518252602082019150602081019050602083039250610a6e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b3c578082015181840152602081019050610b21565b50505050905090810190601f168015610b695780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040518082805190602001908083835b602083101515610bb55780518252602082019150602081019050602083039250610b90565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ca85780601f10610c7d57610100808354040283529160200191610ca8565b820191906000526020600020905b815481529060010190602001808311610c8b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d0b57600080fd5b8060026000846040518082805190602001908083835b602083101515610d465780518252602082019150602081019050602083039250610d21565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610df6578082015181840152602081019050610ddb565b50505050905090810190601f168015610e235780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610eb557600080fd5b60036000826040518082805190602001908083835b602083101515610eef5780518252602082019150602081019050602083039250610eca565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000206000610f3e9190611681565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610fa0578082015181840152602081019050610f85565b50505050905090810190601f168015610fcd5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040518082805190602001908083835b6020831015156110195780518252602082019150602081019050602083039250610ff4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f05780601f106110c5576101008083540402835291602001916110f0565b820191906000526020600020905b8154815290600101906020018083116110d357829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115757600080fd5b8060016000846040518082805190602001908083835b602083101515611192578051825260208201915060208101905060208303925061116d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156112a857808201518184015260208101905061128d565b50505050905090810190601f1680156112d55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561134257600080fd5b8060036000846040518082805190602001908083835b60208310151561137d5780518252602082019150602081019050602083039250611358565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090805190602001906113d39291906116c9565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b8381101561143b578082015181840152602081019050611420565b50505050905090810190601f1680156114685780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b838110156114a1578082015181840152602081019050611486565b50505050905090810190601f1680156114ce5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561158757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156115c357600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f106116a757506116c6565b601f0160209004906000526020600020908101906116c59190611749565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061170a57805160ff1916838001178555611738565b82800160010185558215611738579182015b8281111561173757825182559160200191906001019061171c565b5b5090506117459190611749565b5090565b61176b91905b8082111561176757600081600090555060010161174f565b5090565b905600a165627a7a72305820ca7b168b5023863ead4a5235698fff8c753f79c003e4719f6644795aaff015780029", - "sourceMap": "190:1887:6:-;;;678:56;8:9:-1;5:2;;;30:1;27;20:12;5:2;678:56:6;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;717:10:6;709:5;;:18;;;;;;;;;;;;;;;;;;190:1887;;;;;;", - "deployedSourceMap": "190:1887:6:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;925:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;925:151:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1082:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1082:115:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1374:143;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1374:143:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1523:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1523:106:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;320:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;320:40:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;320:40:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1203:165;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1203:165:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;1812:147:6;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1812:147:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1965:110;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1965:110:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1965:110:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:179;;8:9:-1;5:2;;;30:1;27;20:12;5:2;740:179:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1635:171;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1635:171:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;276:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;276:38:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;227:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;227:43:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;925:151:6;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1000:9:6;:27;1020:5;1010:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1010:16:6;;;;;;;;;;;;;;;;1000:27;;;;;;;;;;;;;;;;;;993:34;;;;;;;;;;;1042:27;1063:5;1042:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1042:27:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;925:151;:::o;1082:115::-;1137:7;1163:9;:27;1183:5;1173:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1173:16:6;;;;;;;;;;;;;;;;1163:27;;;;;;;;;;;;;;;;;;;;;;;;;;;1156:34;;1082:115;;;:::o;1374:143::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1446:7:6;:25;1464:5;1454:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1454:16:6;;;;;;;;;;;;;;;;1446:25;;;;;;;;;;;;;;;;;1439:32;;;1486:24;1504:5;1486:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1486:24:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1374:143;:::o;1523:106::-;1574:4;1597:7;:25;1615:5;1605:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1605:16:6;;;;;;;;;;;;;;;;1597:25;;;;;;;;;;;;;;;;;;1590:32;;1523:106;;;:::o;320:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1203:165::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1308:7:6;1280;:25;1298:5;1288:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1288:16:6;;;;;;;;;;;;;;;;1280:25;;;;;;;;;;;;;;;;;:35;;;;1330:31;1346:5;1353:7;1330:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1330:31:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1203:165;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;1812:147:6:-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1886:7:6;:25;1904:5;1894:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1894:16:6;;;;;;;;;;;;;;;;1886:25;;;;;;;;;;;;;;;;;;1879:32;;;;:::i;:::-;1926:26;1946:5;1926:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1926:26:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1812:147;:::o;1965:110::-;2018:6;2043:7;:25;2061:5;2051:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2051:16:6;;;;;;;;;;;;;;;;2043:25;;;;;;;;;;;;;;;;;2036:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1965:110;;;:::o;740:179::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;854:8:6;824:9;:27;844:5;834:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;834:16:6;;;;;;;;;;;;;;;;824:27;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;877:35;896:5;903:8;877:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;877:35:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:179;;:::o;1635:171::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1744:7:6;1716;:25;1734:5;1724:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1724:16:6;;;;;;;;;;;;;;;;1716:25;;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;:::i;:::-;;1766:33;1784:5;1791:7;1766:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1766:33:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1766:33:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1635:171;;:::o;276:38::-;;;;;;;;;;;;;;;;;:::o;227:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;827:169:16:-;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;190:1887:6:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\n\n/**\n * @dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *\n **/\ncontract Registry is Ownable {\n\n mapping (bytes32=>address) public contracts;\n mapping (bytes32=>uint) public numbers;\n mapping (bytes32=>string) public strings;\n\n event LogRegisterAddress(string _name, address _address);\n event LogUnregisterAddress(string _name);\n event LogRegisterUint(string _name, uint _number);\n event LogUnregisterUint(string _name);\n event LogRegisterString(string _name, string _string);\n event LogUnregisterString(string _name);\n\n constructor() public {\n owner = msg.sender;\n }\n\n function registerAddress(string _name, address _address) public onlyOwner {\n contracts[keccak256(_name)] = _address;\n emit LogRegisterAddress(_name, _address);\n }\n\n function unregisterAddress(string _name) public onlyOwner {\n delete contracts[keccak256(_name)];\n emit LogUnregisterAddress(_name);\n }\n\n function getContract(string _name) public view returns(address) {\n return contracts[keccak256(_name)];\n }\n\n function registerUint(string _name, uint _number) public onlyOwner {\n numbers[keccak256(_name)] = _number;\n emit LogRegisterUint(_name, _number);\n }\n\n function unregisterUint(string _name) public onlyOwner {\n delete numbers[keccak256(_name)];\n emit LogUnregisterUint(_name);\n }\n\n function getUint(string _name) public view returns(uint) {\n return numbers[keccak256(_name)];\n }\n\n function registerString(string _name, string _string) public onlyOwner {\n strings[keccak256(_name)] = _string;\n emit LogRegisterString(_name, _string);\n }\n\n function unregisterString(string _name) public onlyOwner {\n delete strings[keccak256(_name)];\n emit LogUnregisterString(_name);\n }\n\n function getString(string _name) public view returns(string) {\n return strings[keccak256(_name)];\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "exportedSymbols": { - "Registry": [ - 1096 - ] - }, - "id": 1097, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 873, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:6" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 874, - "nodeType": "ImportDirective", - "scope": 1097, - "sourceUnit": 2807, - "src": "26:59:6", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 875, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "211:7:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 876, - "nodeType": "InheritanceSpecifier", - "src": "211:7:6" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": "@dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *", - "fullyImplemented": true, - "id": 1096, - "linearizedBaseContracts": [ - 1096, - 2806 - ], - "name": "Registry", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 880, - "name": "contracts", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "227:43:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - }, - "typeName": { - "id": 879, - "keyType": { - "id": 877, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "236:7:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "227:26:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - }, - "valueType": { - "id": 878, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "245:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 884, - "name": "numbers", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "276:38:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 883, - "keyType": { - "id": 881, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "285:7:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "276:23:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 882, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "294:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 888, - "name": "strings", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "320:40:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string)" - }, - "typeName": { - "id": 887, - "keyType": { - "id": 885, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "329:7:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "320:25:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string)" - }, - "valueType": { - "id": 886, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "338:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 894, - "name": "LogRegisterAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 890, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 894, - "src": "392:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 889, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "392:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 892, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 894, - "src": "406:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "406:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "391:32:6" - }, - "src": "367:57:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 898, - "name": "LogUnregisterAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 897, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 896, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "456:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 895, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "456:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "455:14:6" - }, - "src": "429:41:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 904, - "name": "LogRegisterUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 900, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 904, - "src": "497:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 899, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "497:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 902, - "indexed": false, - "name": "_number", - "nodeType": "VariableDeclaration", - "scope": 904, - "src": "511:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 901, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "511:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "496:28:6" - }, - "src": "475:50:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 908, - "name": "LogUnregisterUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 907, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 906, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 908, - "src": "554:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 905, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "554:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "553:14:6" - }, - "src": "530:38:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 914, - "name": "LogRegisterString", - "nodeType": "EventDefinition", - "parameters": { - "id": 913, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 910, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "597:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 909, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "597:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 912, - "indexed": false, - "name": "_string", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "611:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 911, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "611:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "596:30:6" - }, - "src": "573:54:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 918, - "name": "LogUnregisterString", - "nodeType": "EventDefinition", - "parameters": { - "id": 917, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 916, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 918, - "src": "658:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 915, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "658:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "657:14:6" - }, - "src": "632:40:6" - }, - { - "body": { - "id": 926, - "nodeType": "Block", - "src": "699:35:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 924, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 921, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "709:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 922, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "717:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 923, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "717:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "709:18:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 925, - "nodeType": "ExpressionStatement", - "src": "709:18:6" - } - ] - }, - "documentation": null, - "id": 927, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 919, - "nodeType": "ParameterList", - "parameters": [], - "src": "689:2:6" - }, - "payable": false, - "returnParameters": { - "id": 920, - "nodeType": "ParameterList", - "parameters": [], - "src": "699:0:6" - }, - "scope": 1096, - "src": "678:56:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 949, - "nodeType": "Block", - "src": "814:105:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 936, - "name": "contracts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "824:9:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 940, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 938, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "844:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 937, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "834:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 939, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "834:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "824:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 941, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "854:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "824:38:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 943, - "nodeType": "ExpressionStatement", - "src": "824:38:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 945, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "896:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 946, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "903:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 944, - "name": "LogRegisterAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "877:18:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address)" - } - }, - "id": 947, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "877:35:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 948, - "nodeType": "EmitStatement", - "src": "872:40:6" - } - ] - }, - "documentation": null, - "id": 950, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 934, - "modifierName": { - "argumentTypes": null, - "id": 933, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "804:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "804:9:6" - } - ], - "name": "registerAddress", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 932, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 929, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 950, - "src": "765:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 928, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "765:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 931, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 950, - "src": "779:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 930, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "779:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "764:32:6" - }, - "payable": false, - "returnParameters": { - "id": 935, - "nodeType": "ParameterList", - "parameters": [], - "src": "814:0:6" - }, - "scope": 1096, - "src": "740:179:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 968, - "nodeType": "Block", - "src": "983:93:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 962, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "993:34:6", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 957, - "name": "contracts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "1000:9:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 961, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 959, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1020:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 958, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1010:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 960, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1010:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1000:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 963, - "nodeType": "ExpressionStatement", - "src": "993:34:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 965, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1063:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 964, - "name": "LogUnregisterAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 898, - "src": "1042:20:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1042:27:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 967, - "nodeType": "EmitStatement", - "src": "1037:32:6" - } - ] - }, - "documentation": null, - "id": 969, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 955, - "modifierName": { - "argumentTypes": null, - "id": 954, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "973:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "973:9:6" - } - ], - "name": "unregisterAddress", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 953, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 952, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 969, - "src": "952:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 951, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "952:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "951:14:6" - }, - "payable": false, - "returnParameters": { - "id": 956, - "nodeType": "ParameterList", - "parameters": [], - "src": "983:0:6" - }, - "scope": 1096, - "src": "925:151:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 982, - "nodeType": "Block", - "src": "1146:51:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 976, - "name": "contracts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "1163:9:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 978, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 971, - "src": "1183:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 977, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1173:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 979, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1173:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1163:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 975, - "id": 981, - "nodeType": "Return", - "src": "1156:34:6" - } - ] - }, - "documentation": null, - "id": 983, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getContract", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 972, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 971, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 983, - "src": "1103:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 970, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1103:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1102:14:6" - }, - "payable": false, - "returnParameters": { - "id": 975, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 974, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 983, - "src": "1137:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 973, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1137:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1136:9:6" - }, - "scope": 1096, - "src": "1082:115:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1005, - "nodeType": "Block", - "src": "1270:98:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 992, - "name": "numbers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1280:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 996, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 994, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1298:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 993, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1288:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 995, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1288:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1280:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 997, - "name": "_number", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1308:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1280:35:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 999, - "nodeType": "ExpressionStatement", - "src": "1280:35:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1001, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1346:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1002, - "name": "_number", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1353:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1000, - "name": "LogRegisterUint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 904, - "src": "1330:15:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1330:31:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1004, - "nodeType": "EmitStatement", - "src": "1325:36:6" - } - ] - }, - "documentation": null, - "id": 1006, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 990, - "modifierName": { - "argumentTypes": null, - "id": 989, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1260:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1260:9:6" - } - ], - "name": "registerUint", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 988, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 985, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1225:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 984, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1225:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 987, - "name": "_number", - "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1239:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 986, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1239:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1224:28:6" - }, - "payable": false, - "returnParameters": { - "id": 991, - "nodeType": "ParameterList", - "parameters": [], - "src": "1270:0:6" - }, - "scope": 1096, - "src": "1203:165:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1024, - "nodeType": "Block", - "src": "1429:88:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1018, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1439:32:6", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1013, - "name": "numbers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1446:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 1017, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1015, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1464:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1014, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1454:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1454:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1446:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1019, - "nodeType": "ExpressionStatement", - "src": "1439:32:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1021, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1504:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1020, - "name": "LogUnregisterUint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 908, - "src": "1486:17:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1486:24:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1023, - "nodeType": "EmitStatement", - "src": "1481:29:6" - } - ] - }, - "documentation": null, - "id": 1025, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1011, - "modifierName": { - "argumentTypes": null, - "id": 1010, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1419:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1419:9:6" - } - ], - "name": "unregisterUint", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1009, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1008, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1025, - "src": "1398:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1007, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1398:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1397:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1012, - "nodeType": "ParameterList", - "parameters": [], - "src": "1429:0:6" - }, - "scope": 1096, - "src": "1374:143:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1038, - "nodeType": "Block", - "src": "1580:49:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1032, - "name": "numbers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1597:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 1036, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1034, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1027, - "src": "1615:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1033, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1605:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1605:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1597:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1031, - "id": 1037, - "nodeType": "Return", - "src": "1590:32:6" - } - ] - }, - "documentation": null, - "id": 1039, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getUint", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1028, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1027, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1540:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1026, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1540:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1539:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1031, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1030, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1574:4:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1029, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1574:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1573:6:6" - }, - "scope": 1096, - "src": "1523:106:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1061, - "nodeType": "Block", - "src": "1706:100:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1048, - "name": "strings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1716:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" - } - }, - "id": 1052, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1050, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1041, - "src": "1734:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1049, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1724:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1724:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1716:25:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1053, - "name": "_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1043, - "src": "1744:7:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1716:35:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1055, - "nodeType": "ExpressionStatement", - "src": "1716:35:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1057, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1041, - "src": "1784:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1058, - "name": "_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1043, - "src": "1791:7:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1056, - "name": "LogRegisterString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 914, - "src": "1766:17:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1766:33:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1060, - "nodeType": "EmitStatement", - "src": "1761:38:6" - } - ] - }, - "documentation": null, - "id": 1062, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1046, - "modifierName": { - "argumentTypes": null, - "id": 1045, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1696:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1696:9:6" - } - ], - "name": "registerString", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1044, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1041, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1659:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1040, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1659:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1043, - "name": "_string", - "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1673:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1042, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1673:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1658:30:6" - }, - "payable": false, - "returnParameters": { - "id": 1047, - "nodeType": "ParameterList", - "parameters": [], - "src": "1706:0:6" - }, - "scope": 1096, - "src": "1635:171:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1080, - "nodeType": "Block", - "src": "1869:90:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1074, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1879:32:6", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1069, - "name": "strings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1886:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" - } - }, - "id": 1073, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1071, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1904:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1070, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1894:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1072, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1894:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1886:25:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1075, - "nodeType": "ExpressionStatement", - "src": "1879:32:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1077, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1946:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1076, - "name": "LogUnregisterString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "1926:19:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1926:26:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1079, - "nodeType": "EmitStatement", - "src": "1921:31:6" - } - ] - }, - "documentation": null, - "id": 1081, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1067, - "modifierName": { - "argumentTypes": null, - "id": 1066, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1859:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1859:9:6" - } - ], - "name": "unregisterString", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1065, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1064, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1081, - "src": "1838:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1063, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1838:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1837:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1068, - "nodeType": "ParameterList", - "parameters": [], - "src": "1869:0:6" - }, - "scope": 1096, - "src": "1812:147:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1094, - "nodeType": "Block", - "src": "2026:49:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1088, - "name": "strings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "2043:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" - } - }, - "id": 1092, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1090, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1083, - "src": "2061:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1089, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2051:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2051:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2043:25:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 1087, - "id": 1093, - "nodeType": "Return", - "src": "2036:32:6" - } - ] - }, - "documentation": null, - "id": 1095, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getString", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1084, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1083, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1984:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1082, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1984:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1983:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1087, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1086, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "2018:6:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1085, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2018:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2017:8:6" - }, - "scope": 1096, - "src": "1965:110:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1097, - "src": "190:1887:6" - } - ], - "src": "0:2078:6" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "exportedSymbols": { - "Registry": [ - 1096 - ] - }, - "id": 1097, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 873, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:6" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 874, - "nodeType": "ImportDirective", - "scope": 1097, - "sourceUnit": 2807, - "src": "26:59:6", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 875, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "211:7:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 876, - "nodeType": "InheritanceSpecifier", - "src": "211:7:6" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": "@dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *", - "fullyImplemented": true, - "id": 1096, - "linearizedBaseContracts": [ - 1096, - 2806 - ], - "name": "Registry", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 880, - "name": "contracts", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "227:43:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - }, - "typeName": { - "id": 879, - "keyType": { - "id": 877, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "236:7:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "227:26:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - }, - "valueType": { - "id": 878, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "245:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 884, - "name": "numbers", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "276:38:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 883, - "keyType": { - "id": 881, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "285:7:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "276:23:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueType": { - "id": 882, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "294:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 888, - "name": "strings", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "320:40:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string)" - }, - "typeName": { - "id": 887, - "keyType": { - "id": 885, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "329:7:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "320:25:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string)" - }, - "valueType": { - "id": 886, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "338:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 894, - "name": "LogRegisterAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 890, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 894, - "src": "392:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 889, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "392:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 892, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 894, - "src": "406:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "406:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "391:32:6" - }, - "src": "367:57:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 898, - "name": "LogUnregisterAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 897, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 896, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "456:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 895, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "456:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "455:14:6" - }, - "src": "429:41:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 904, - "name": "LogRegisterUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 900, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 904, - "src": "497:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 899, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "497:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 902, - "indexed": false, - "name": "_number", - "nodeType": "VariableDeclaration", - "scope": 904, - "src": "511:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 901, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "511:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "496:28:6" - }, - "src": "475:50:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 908, - "name": "LogUnregisterUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 907, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 906, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 908, - "src": "554:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 905, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "554:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "553:14:6" - }, - "src": "530:38:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 914, - "name": "LogRegisterString", - "nodeType": "EventDefinition", - "parameters": { - "id": 913, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 910, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "597:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 909, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "597:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 912, - "indexed": false, - "name": "_string", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "611:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 911, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "611:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "596:30:6" - }, - "src": "573:54:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 918, - "name": "LogUnregisterString", - "nodeType": "EventDefinition", - "parameters": { - "id": 917, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 916, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 918, - "src": "658:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 915, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "658:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "657:14:6" - }, - "src": "632:40:6" - }, - { - "body": { - "id": 926, - "nodeType": "Block", - "src": "699:35:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 924, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 921, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "709:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 922, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "717:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 923, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "717:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "709:18:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 925, - "nodeType": "ExpressionStatement", - "src": "709:18:6" - } - ] - }, - "documentation": null, - "id": 927, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 919, - "nodeType": "ParameterList", - "parameters": [], - "src": "689:2:6" - }, - "payable": false, - "returnParameters": { - "id": 920, - "nodeType": "ParameterList", - "parameters": [], - "src": "699:0:6" - }, - "scope": 1096, - "src": "678:56:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 949, - "nodeType": "Block", - "src": "814:105:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 936, - "name": "contracts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "824:9:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 940, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 938, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "844:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 937, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "834:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 939, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "834:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "824:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 941, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "854:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "824:38:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 943, - "nodeType": "ExpressionStatement", - "src": "824:38:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 945, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "896:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 946, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "903:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 944, - "name": "LogRegisterAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "877:18:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address)" - } - }, - "id": 947, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "877:35:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 948, - "nodeType": "EmitStatement", - "src": "872:40:6" - } - ] - }, - "documentation": null, - "id": 950, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 934, - "modifierName": { - "argumentTypes": null, - "id": 933, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "804:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "804:9:6" - } - ], - "name": "registerAddress", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 932, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 929, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 950, - "src": "765:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 928, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "765:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 931, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 950, - "src": "779:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 930, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "779:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "764:32:6" - }, - "payable": false, - "returnParameters": { - "id": 935, - "nodeType": "ParameterList", - "parameters": [], - "src": "814:0:6" - }, - "scope": 1096, - "src": "740:179:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 968, - "nodeType": "Block", - "src": "983:93:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 962, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "993:34:6", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 957, - "name": "contracts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "1000:9:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 961, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 959, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1020:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 958, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1010:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 960, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1010:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1000:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 963, - "nodeType": "ExpressionStatement", - "src": "993:34:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 965, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1063:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 964, - "name": "LogUnregisterAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 898, - "src": "1042:20:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1042:27:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 967, - "nodeType": "EmitStatement", - "src": "1037:32:6" - } - ] - }, - "documentation": null, - "id": 969, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 955, - "modifierName": { - "argumentTypes": null, - "id": 954, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "973:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "973:9:6" - } - ], - "name": "unregisterAddress", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 953, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 952, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 969, - "src": "952:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 951, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "952:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "951:14:6" - }, - "payable": false, - "returnParameters": { - "id": 956, - "nodeType": "ParameterList", - "parameters": [], - "src": "983:0:6" - }, - "scope": 1096, - "src": "925:151:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 982, - "nodeType": "Block", - "src": "1146:51:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 976, - "name": "contracts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "1163:9:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 978, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 971, - "src": "1183:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 977, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1173:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 979, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1173:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1163:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 975, - "id": 981, - "nodeType": "Return", - "src": "1156:34:6" - } - ] - }, - "documentation": null, - "id": 983, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getContract", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 972, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 971, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 983, - "src": "1103:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 970, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1103:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1102:14:6" - }, - "payable": false, - "returnParameters": { - "id": 975, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 974, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 983, - "src": "1137:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 973, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1137:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1136:9:6" - }, - "scope": 1096, - "src": "1082:115:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1005, - "nodeType": "Block", - "src": "1270:98:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 992, - "name": "numbers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1280:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 996, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 994, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1298:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 993, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1288:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 995, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1288:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1280:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 997, - "name": "_number", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1308:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1280:35:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 999, - "nodeType": "ExpressionStatement", - "src": "1280:35:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1001, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1346:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1002, - "name": "_number", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1353:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1000, - "name": "LogRegisterUint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 904, - "src": "1330:15:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1330:31:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1004, - "nodeType": "EmitStatement", - "src": "1325:36:6" - } - ] - }, - "documentation": null, - "id": 1006, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 990, - "modifierName": { - "argumentTypes": null, - "id": 989, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1260:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1260:9:6" - } - ], - "name": "registerUint", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 988, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 985, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1225:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 984, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1225:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 987, - "name": "_number", - "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1239:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 986, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1239:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1224:28:6" - }, - "payable": false, - "returnParameters": { - "id": 991, - "nodeType": "ParameterList", - "parameters": [], - "src": "1270:0:6" - }, - "scope": 1096, - "src": "1203:165:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1024, - "nodeType": "Block", - "src": "1429:88:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1018, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1439:32:6", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1013, - "name": "numbers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1446:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 1017, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1015, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1464:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1014, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1454:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1454:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1446:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1019, - "nodeType": "ExpressionStatement", - "src": "1439:32:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1021, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1504:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1020, - "name": "LogUnregisterUint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 908, - "src": "1486:17:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1486:24:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1023, - "nodeType": "EmitStatement", - "src": "1481:29:6" - } - ] - }, - "documentation": null, - "id": 1025, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1011, - "modifierName": { - "argumentTypes": null, - "id": 1010, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1419:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1419:9:6" - } - ], - "name": "unregisterUint", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1009, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1008, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1025, - "src": "1398:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1007, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1398:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1397:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1012, - "nodeType": "ParameterList", - "parameters": [], - "src": "1429:0:6" - }, - "scope": 1096, - "src": "1374:143:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1038, - "nodeType": "Block", - "src": "1580:49:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1032, - "name": "numbers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1597:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 1036, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1034, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1027, - "src": "1615:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1033, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1605:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1605:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1597:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1031, - "id": 1037, - "nodeType": "Return", - "src": "1590:32:6" - } - ] - }, - "documentation": null, - "id": 1039, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getUint", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1028, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1027, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1540:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1026, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1540:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1539:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1031, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1030, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1574:4:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1029, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1574:4:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1573:6:6" - }, - "scope": 1096, - "src": "1523:106:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1061, - "nodeType": "Block", - "src": "1706:100:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1048, - "name": "strings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1716:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" - } - }, - "id": 1052, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1050, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1041, - "src": "1734:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1049, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1724:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1724:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1716:25:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1053, - "name": "_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1043, - "src": "1744:7:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1716:35:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1055, - "nodeType": "ExpressionStatement", - "src": "1716:35:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1057, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1041, - "src": "1784:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1058, - "name": "_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1043, - "src": "1791:7:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1056, - "name": "LogRegisterString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 914, - "src": "1766:17:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1766:33:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1060, - "nodeType": "EmitStatement", - "src": "1761:38:6" - } - ] - }, - "documentation": null, - "id": 1062, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1046, - "modifierName": { - "argumentTypes": null, - "id": 1045, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1696:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1696:9:6" - } - ], - "name": "registerString", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1044, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1041, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1659:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1040, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1659:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1043, - "name": "_string", - "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1673:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1042, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1673:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1658:30:6" - }, - "payable": false, - "returnParameters": { - "id": 1047, - "nodeType": "ParameterList", - "parameters": [], - "src": "1706:0:6" - }, - "scope": 1096, - "src": "1635:171:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1080, - "nodeType": "Block", - "src": "1869:90:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1074, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1879:32:6", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1069, - "name": "strings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1886:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" - } - }, - "id": 1073, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1071, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1904:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1070, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1894:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1072, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1894:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1886:25:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1075, - "nodeType": "ExpressionStatement", - "src": "1879:32:6" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1077, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1946:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1076, - "name": "LogUnregisterString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "1926:19:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1926:26:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1079, - "nodeType": "EmitStatement", - "src": "1921:31:6" - } - ] - }, - "documentation": null, - "id": 1081, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1067, - "modifierName": { - "argumentTypes": null, - "id": 1066, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1859:9:6", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1859:9:6" - } - ], - "name": "unregisterString", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1065, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1064, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1081, - "src": "1838:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1063, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1838:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1837:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1068, - "nodeType": "ParameterList", - "parameters": [], - "src": "1869:0:6" - }, - "scope": 1096, - "src": "1812:147:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1094, - "nodeType": "Block", - "src": "2026:49:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1088, - "name": "strings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "2043:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" - } - }, - "id": 1092, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1090, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1083, - "src": "2061:5:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1089, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2051:9:6", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2051:16:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2043:25:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 1087, - "id": 1093, - "nodeType": "Return", - "src": "2036:32:6" - } - ] - }, - "documentation": null, - "id": 1095, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getString", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1084, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1083, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1984:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1082, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1984:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1983:14:6" - }, - "payable": false, - "returnParameters": { - "id": 1087, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1086, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "2018:6:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1085, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2018:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2017:8:6" - }, - "scope": 1096, - "src": "1965:110:6", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1097, - "src": "190:1887:6" - } - ], - "src": "0:2078:6" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.675Z" -} \ No newline at end of file +{"contractName":"Registry","abi":[{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"strings","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"numbers","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"contracts","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":false,"name":"_name","type":"string"},{"indexed":false,"name":"_address","type":"address"}],"name":"LogRegisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_number","type":"uint256"}],"name":"LogRegisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_string","type":"string"}],"name":"LogRegisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_address","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_number","type":"uint256"}],"name":"registerUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getUint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_string","type":"string"}],"name":"registerString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getString","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611b66806100a06000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ad6565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cbd565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610db0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610e60565b005b3480156103f657600080fd5b506103ff611051565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611076565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611265565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f0565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611647565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506118ad565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506118c5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118f8565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040516020018082805190602001908083835b6020831015156108555780518252602082019150602081019050602083039250610830565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156108be5780518252602082019150602081019050602083039250610899565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561098657808201518184015260208101905061096b565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040516020018082805190602001908083835b602083101515610a0257805182526020820191506020810190506020830392506109dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610a6b5780518252602082019150602081019050602083039250610a46565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b3157600080fd5b60026000826040516020018082805190602001908083835b602083101515610b6e5780518252602082019150602081019050602083039250610b49565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610bd75780518252602082019150602081019050602083039250610bb2565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c80578082015181840152602081019050610c65565b50505050905090810190601f168015610cad5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040516020018082805190602001908083835b602083101515610cfc5780518252602082019150602081019050602083039250610cd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d655780518252602082019150602081019050602083039250610d40565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e585780601f10610e2d57610100808354040283529160200191610e58565b820191906000526020600020905b815481529060010190602001808311610e3b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ebb57600080fd5b8060026000846040516020018082805190602001908083835b602083101515610ef95780518252602082019150602081019050602083039250610ed4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f625780518252602082019150602081019050602083039250610f3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611012578082015181840152602081019050610ff7565b50505050905090810190601f16801561103f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d157600080fd5b60036000826040516020018082805190602001908083835b60208310151561110e57805182526020820191506020810190506020830392506110e9565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111775780518252602082019150602081019050602083039250611152565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006111c69190611a4d565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561122857808201518184015260208101905061120d565b50505050905090810190601f1680156112555780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040516020018082805190602001908083835b6020831015156112a4578051825260208201915060208101905060208303925061127f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130d57805182526020820191506020810190506020830392506112e8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e45780601f106113b9576101008083540402835291602001916113e4565b820191906000526020600020905b8154815290600101906020018083116113c757829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144b57600080fd5b8060016000846040516020018082805190602001908083835b6020831015156114895780518252602082019150602081019050602083039250611464565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156114f257805182526020820191506020810190506020830392506114cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156116085780820151818401526020810190506115ed565b50505050905090810190601f1680156116355780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116a257600080fd5b8060036000846040516020018082805190602001908083835b6020831015156116e057805182526020820191506020810190506020830392506116bb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156117495780518252602082019150602081019050602083039250611724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020908051906020019061179f929190611a95565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156118075780820151818401526020810190506117ec565b50505050905090810190601f1680156118345780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b8381101561186d578082015181840152602081019050611852565b50505050905090810190601f16801561189a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561198f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10611a735750611a92565b601f016020900490600052602060002090810190611a919190611b15565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad657805160ff1916838001178555611b04565b82800160010185558215611b04579182015b82811115611b03578251825591602001919060010190611ae8565b5b509050611b119190611b15565b5090565b611b3791905b80821115611b33576000816000905550600101611b1b565b5090565b905600a165627a7a72305820358bc0ec1097ca4e091e56ea95fe10c8a3cc3e5fd223f4ad5863d418524dff680029"} \ No newline at end of file diff --git a/build/contracts/SafeMath.json b/build/contracts/SafeMath.json index 0232834..7daeef7 100644 --- a/build/contracts/SafeMath.json +++ b/build/contracts/SafeMath.json @@ -1,2439 +1 @@ -{ - "contractName": "SafeMath", - "abi": [], - "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582022c24bdb3a959eab97283bcff4452acdafd8b0855b4432d435c67754b3cbeb610029", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582022c24bdb3a959eab97283bcff4452acdafd8b0855b4432d435c67754b3cbeb610029", - "sourceMap": "117:698:15:-;;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": "117:698:15:-;;;;;;;;", - "source": "pragma solidity ^0.4.11;\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant 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 constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n}\n", - "sourcePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "ast": { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "exportedSymbols": { - "SafeMath": [ - 2750 - ] - }, - "id": 2751, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2657, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:15" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "library", - "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", - "fullyImplemented": true, - "id": 2750, - "linearizedBaseContracts": [ - 2750 - ], - "name": "SafeMath", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 2686, - "nodeType": "Block", - "src": "209:76:15", - "statements": [ - { - "assignments": [ - 2667 - ], - "declarations": [ - { - "constant": false, - "id": 2667, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "215:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2666, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "215:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2671, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2668, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2659, - "src": "227:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "argumentTypes": null, - "id": 2669, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2661, - "src": "231:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "227:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "215:17:15" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2681, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2673, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2659, - "src": "245:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2674, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "250:1:15", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "245:6:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2676, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2667, - "src": "255:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 2677, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2659, - "src": "259:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2679, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2661, - "src": "264:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:10:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "245:20:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2672, - "name": "assert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "238:6:15", - "typeDescriptions": { - "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "238:28:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2683, - "nodeType": "ExpressionStatement", - "src": "238:28:15" - }, - { - "expression": { - "argumentTypes": null, - "id": 2684, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2667, - "src": "279:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2665, - "id": 2685, - "nodeType": "Return", - "src": "272:8:15" - } - ] - }, - "documentation": null, - "id": 2687, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "mul", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2662, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2659, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "151:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2658, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "151:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2661, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "162:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2660, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "162:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "150:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2665, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2664, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "200:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2663, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "200:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "199:9:15" - }, - "scope": 2750, - "src": "138:147:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2704, - "nodeType": "Block", - "src": "360:198:15", - "statements": [ - { - "assignments": [ - 2697 - ], - "declarations": [ - { - "constant": false, - "id": 2697, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "440:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2696, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "440:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2701, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2698, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2689, - "src": "452:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 2699, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2691, - "src": "456:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "452:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "440:17:15" - }, - { - "expression": { - "argumentTypes": null, - "id": 2702, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2697, - "src": "552:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2695, - "id": 2703, - "nodeType": "Return", - "src": "545:8:15" - } - ] - }, - "documentation": null, - "id": 2705, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "div", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2692, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2689, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "302:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2688, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "302:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2691, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "313:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2690, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "313:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "301:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2695, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2694, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "351:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2693, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "351:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "350:9:15" - }, - "scope": 2750, - "src": "289:269:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2724, - "nodeType": "Block", - "src": "633:43:15", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2715, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2709, - "src": "646:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "argumentTypes": null, - "id": 2716, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2707, - "src": "651:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "646:6:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2714, - "name": "assert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "639:6:15", - "typeDescriptions": { - "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "639:14:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2719, - "nodeType": "ExpressionStatement", - "src": "639:14:15" - }, - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2722, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2720, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2707, - "src": "666:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "id": 2721, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2709, - "src": "670:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "666:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2713, - "id": 2723, - "nodeType": "Return", - "src": "659:12:15" - } - ] - }, - "documentation": null, - "id": 2725, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "sub", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2710, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2707, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2725, - "src": "575:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2706, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "575:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2709, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2725, - "src": "586:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2708, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "586:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "574:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2713, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2712, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2725, - "src": "624:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2711, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "624:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "623:9:15" - }, - "scope": 2750, - "src": "562:114:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2748, - "nodeType": "Block", - "src": "751:62:15", - "statements": [ - { - "assignments": [ - 2735 - ], - "declarations": [ - { - "constant": false, - "id": 2735, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "757:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2734, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "757:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2739, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2736, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2727, - "src": "769:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "argumentTypes": null, - "id": 2737, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2729, - "src": "773:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "769:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "757:17:15" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2741, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2735, - "src": "787:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 2742, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2727, - "src": "792:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "787:6:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2740, - "name": "assert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "780:6:15", - "typeDescriptions": { - "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "780:14:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2745, - "nodeType": "ExpressionStatement", - "src": "780:14:15" - }, - { - "expression": { - "argumentTypes": null, - "id": 2746, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2735, - "src": "807:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2733, - "id": 2747, - "nodeType": "Return", - "src": "800:8:15" - } - ] - }, - "documentation": null, - "id": 2749, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "add", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2730, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2727, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "693:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2726, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "693:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2729, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "704:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2728, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "704:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "692:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2733, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2732, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "742:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2731, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "742:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "741:9:15" - }, - "scope": 2750, - "src": "680:133:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - } - ], - "scope": 2751, - "src": "117:698:15" - } - ], - "src": "0:816:15" - }, - "legacyAST": { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "exportedSymbols": { - "SafeMath": [ - 2750 - ] - }, - "id": 2751, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2657, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:15" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "library", - "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", - "fullyImplemented": true, - "id": 2750, - "linearizedBaseContracts": [ - 2750 - ], - "name": "SafeMath", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 2686, - "nodeType": "Block", - "src": "209:76:15", - "statements": [ - { - "assignments": [ - 2667 - ], - "declarations": [ - { - "constant": false, - "id": 2667, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "215:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2666, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "215:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2671, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2668, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2659, - "src": "227:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "argumentTypes": null, - "id": 2669, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2661, - "src": "231:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "227:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "215:17:15" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2681, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2673, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2659, - "src": "245:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2674, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "250:1:15", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "245:6:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2676, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2667, - "src": "255:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 2677, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2659, - "src": "259:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2679, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2661, - "src": "264:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:10:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "245:20:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2672, - "name": "assert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "238:6:15", - "typeDescriptions": { - "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "238:28:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2683, - "nodeType": "ExpressionStatement", - "src": "238:28:15" - }, - { - "expression": { - "argumentTypes": null, - "id": 2684, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2667, - "src": "279:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2665, - "id": 2685, - "nodeType": "Return", - "src": "272:8:15" - } - ] - }, - "documentation": null, - "id": 2687, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "mul", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2662, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2659, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "151:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2658, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "151:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2661, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "162:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2660, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "162:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "150:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2665, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2664, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "200:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2663, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "200:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "199:9:15" - }, - "scope": 2750, - "src": "138:147:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2704, - "nodeType": "Block", - "src": "360:198:15", - "statements": [ - { - "assignments": [ - 2697 - ], - "declarations": [ - { - "constant": false, - "id": 2697, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "440:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2696, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "440:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2701, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2698, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2689, - "src": "452:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 2699, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2691, - "src": "456:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "452:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "440:17:15" - }, - { - "expression": { - "argumentTypes": null, - "id": 2702, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2697, - "src": "552:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2695, - "id": 2703, - "nodeType": "Return", - "src": "545:8:15" - } - ] - }, - "documentation": null, - "id": 2705, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "div", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2692, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2689, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "302:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2688, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "302:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2691, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "313:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2690, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "313:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "301:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2695, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2694, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2705, - "src": "351:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2693, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "351:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "350:9:15" - }, - "scope": 2750, - "src": "289:269:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2724, - "nodeType": "Block", - "src": "633:43:15", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2715, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2709, - "src": "646:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "argumentTypes": null, - "id": 2716, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2707, - "src": "651:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "646:6:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2714, - "name": "assert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "639:6:15", - "typeDescriptions": { - "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "639:14:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2719, - "nodeType": "ExpressionStatement", - "src": "639:14:15" - }, - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2722, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2720, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2707, - "src": "666:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "id": 2721, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2709, - "src": "670:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "666:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2713, - "id": 2723, - "nodeType": "Return", - "src": "659:12:15" - } - ] - }, - "documentation": null, - "id": 2725, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "sub", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2710, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2707, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2725, - "src": "575:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2706, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "575:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2709, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2725, - "src": "586:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2708, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "586:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "574:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2713, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2712, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2725, - "src": "624:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2711, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "624:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "623:9:15" - }, - "scope": 2750, - "src": "562:114:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - }, - { - "body": { - "id": 2748, - "nodeType": "Block", - "src": "751:62:15", - "statements": [ - { - "assignments": [ - 2735 - ], - "declarations": [ - { - "constant": false, - "id": 2735, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "757:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2734, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "757:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2739, - "initialValue": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2736, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2727, - "src": "769:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "argumentTypes": null, - "id": 2737, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2729, - "src": "773:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "769:5:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "757:17:15" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2741, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2735, - "src": "787:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 2742, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2727, - "src": "792:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "787:6:15", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2740, - "name": "assert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "780:6:15", - "typeDescriptions": { - "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "780:14:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2745, - "nodeType": "ExpressionStatement", - "src": "780:14:15" - }, - { - "expression": { - "argumentTypes": null, - "id": 2746, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2735, - "src": "807:1:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2733, - "id": 2747, - "nodeType": "Return", - "src": "800:8:15" - } - ] - }, - "documentation": null, - "id": 2749, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "add", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2730, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2727, - "name": "a", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "693:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2726, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "693:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2729, - "name": "b", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "704:9:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2728, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "704:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "692:22:15" - }, - "payable": false, - "returnParameters": { - "id": 2733, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2732, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2749, - "src": "742:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2731, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "742:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "741:9:15" - }, - "scope": 2750, - "src": "680:133:15", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - } - ], - "scope": 2751, - "src": "117:698:15" - } - ], - "src": "0:816:15" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.687Z" -} \ No newline at end of file +{"contractName":"SafeMath","abi":[],"bytecode":"0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582022c24bdb3a959eab97283bcff4452acdafd8b0855b4432d435c67754b3cbeb610029"} \ No newline at end of file diff --git a/build/contracts/Sales.json b/build/contracts/Sales.json index ea8a407..b5cabcc 100644 --- a/build/contracts/Sales.json +++ b/build/contracts/Sales.json @@ -1,4880 +1 @@ -{ - "contractName": "Sales", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "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": [ - { - "name": "_registry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_buyer", - "type": "address" - }, - { - "indexed": false, - "name": "_videoId", - "type": "string" - }, - { - "indexed": false, - "name": "_price", - "type": "uint256" - }, - { - "indexed": false, - "name": "_ipfsData", - "type": "string" - } - ], - "name": "LogCreateSale", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_buyer", - "type": "address" - }, - { - "indexed": false, - "name": "_videoId", - "type": "string" - } - ], - "name": "LogRemoveSale", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_buyer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - }, - { - "name": "_price", - "type": "uint256" - }, - { - "name": "_ipfsData", - "type": "string" - } - ], - "name": "create", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_buyer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "remove", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_buyer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "get", - "outputs": [ - { - "name": "", - "type": "uint256" - }, - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_buyer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "userBoughtVideo", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b506040516020806111cf83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506110cb806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b506101266107cf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d6107f5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061081a565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506108ef565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cea565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e3f565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040518082805190602001908083835b6020831015156106895780518252602082019150602081019050602083039250610664565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006106f99190610fb2565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610790578082015181840152602081019050610775565b50505050905090810190601f1680156107bd5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610893578051825260208201915060208101905060208303925061086e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610a715750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0757600080fd5b505af1158015610a1b573d6000803e3d6000fd5b505050506040513d6020811015610a3157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610a7c57600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040518082805190602001908083835b602083101515610b125780518252602082019150602081019050602083039250610aed565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610b9b929190610ffa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610c40578082015181840152602081019050610c25565b50505050905090810190601f168015610c6d5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610ca6578082015181840152602081019050610c8b565b50505050905090810190601f168015610cd35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d4557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d8157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040518082805190602001908083835b602083101515610ebc5780518252602082019150602081019050602083039250610e97565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f9f5780601f10610f7457610100808354040283529160200191610f9f565b820191906000526020600020905b815481529060010190602001808311610f8257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f10610fd85750610ff7565b601f016020900490600052602060002090810190610ff6919061107a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061103b57805160ff1916838001178555611069565b82800160010185558215611069579182015b8281111561106857825182559160200191906001019061104d565b5b509050611076919061107a565b5090565b61109c91905b80821115611098576000816000905550600101611080565b5090565b905600a165627a7a723058206b92c169908e0cf47f7c8a8d64fbd550dc8d3b0d765cb22751da6c258811bb1a0029", - "deployedBytecode": "0x608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b506101266107cf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d6107f5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061081a565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506108ef565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cea565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e3f565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040518082805190602001908083835b6020831015156106895780518252602082019150602081019050602083039250610664565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006106f99190610fb2565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610790578082015181840152602081019050610775565b50505050905090810190601f1680156107bd5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610893578051825260208201915060208101905060208303925061086e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610a715750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0757600080fd5b505af1158015610a1b573d6000803e3d6000fd5b505050506040513d6020811015610a3157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610a7c57600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040518082805190602001908083835b602083101515610b125780518252602082019150602081019050602083039250610aed565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610b9b929190610ffa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610c40578082015181840152602081019050610c25565b50505050905090810190601f168015610c6d5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610ca6578082015181840152602081019050610c8b565b50505050905090810190601f168015610cd35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d4557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d8157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040518082805190602001908083835b602083101515610ebc5780518252602082019150602081019050602083039250610e97565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f9f5780601f10610f7457610100808354040283529160200191610f9f565b820191906000526020600020905b815481529060010190602001808311610f8257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f10610fd85750610ff7565b601f016020900490600052602060002090810190610ff6919061107a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061103b57805160ff1916838001178555611069565b82800160010185558215611069579182015b8281111561106857825182559160200191906001019061104d565b5b509050611076919061107a565b5090565b61109c91905b80821115611098576000816000905550600101611080565b5090565b905600a165627a7a723058206b92c169908e0cf47f7c8a8d64fbd550dc8d3b0d765cb22751da6c258811bb1a0029", - "sourceMap": "168:2283:7:-;;;749:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;749:104:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;806:10:7;798:5;;:18;;;;;;;;;;;;;;;;;;837:9;826:8;;:20;;;;;;;;;;;;;;;;;;749:104;168:2283;;;;;;", - "deployedSourceMap": "168:2283:7:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1685:186;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1685:186:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;201:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;201:24:7;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;2292:157:7;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2292:157:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1294:261;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1294:261:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;2050:236:7;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2050:236:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2050:236:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1685:186;669:5;;;;;;;;;;;655:19;;:10;:19;;;654:70;;;;694:8;;;;;;;;;;;:20;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;694:29:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;694:29:7;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;694:29:7;;;;;;;;;;;;;;;;680:43;;:10;:43;;;654:70;646:79;;;;;;;;1783:6;:14;1790:6;1783:14;;;;;;;;;;;;;;;:35;1808:8;1798:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1798:19:7;;;;;;;;;;;;;;;;1783:35;;;;;;;;;;;;;;;;;;1776:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;1833:31;1847:6;1855:8;1833:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1833:31:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1685:186;;:::o;201:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;2292:157:7:-;2370:4;2393:6;:14;2400:6;2393:14;;;;;;;;;;;;;;;:35;2418:8;2408:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2408:19:7;;;;;;;;;;;;;;;;2393:35;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;2386:56;;2292:157;;;;:::o;1294:261::-;669:5;;;;;;;;;;;655:19;;:10;:19;;;654:70;;;;694:8;;;;;;;;;;;:20;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;694:29:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;694:29:7;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;694:29:7;;;;;;;;;;;;;;;;680:43;;:10;:43;;;654:70;646:79;;;;;;;;1454:29;;;;;;;;;1459:4;1454:29;;;;;;1465:6;1454:29;;;;1473:9;1454:29;;;1416:6;:14;1423:6;1416:14;;;;;;;;;;;;;;;:35;1441:8;1431:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1431:19:7;;;;;;;;;;;;;;;;1416:35;;;;;;;;;;;;;;;;;:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;1498:50;1512:6;1520:8;1530:6;1538:9;1498:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1498:50:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1498:50:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1294:261;;;;:::o;827:169:16:-;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;2050:236:7:-;2117:4;2123:6;2141:18;2162:6;:14;2169:6;2162:14;;;;;;;;;;;;;;;:35;2187:8;2177:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2177:19:7;;;;;;;;;;;;;;;;2162:35;;;;;;;;;;;;;;;;;2141:56;;2228:5;:12;;;2254:5;:15;;2207:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2050:236;;;;;;:::o;168:2283::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Registry.sol\";\n\ncontract Sales is Ownable {\n\n Registry public registry;\n\n struct Data {\n bool _isRegistered;\n uint _price;\n string _ipfsData;\n }\n\n\n // mapping from user addrsses and video ids to booleans\n mapping (address=> mapping (bytes32 => Data)) private _sales;\n\n event LogCreateSale(address _buyer, string _videoId, uint _price, string _ipfsData);\n event LogRemoveSale(address _buyer, string _videoId);\n\n modifier onlyOwnerOrStore() {\n require((msg.sender == owner) || (msg.sender == registry.getContract(\"Store\")));\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n /**\n * @dev registers a sale of a video\n * Does not do any payments - this call only registers the sale\n * Only the Store contract (as well as the owner) can register a sale\n * @param _videoId the id of the video\n * @param _buyer the buyer of the video (an ethereum address)\n * @param _price the price that was paid for the video\n * @param _ipfsData a reference to further data that can be found on ipfs\n */\n function create(address _buyer, string _videoId, uint _price, string _ipfsData)\n public onlyOwnerOrStore {\n _sales[_buyer][keccak256(_videoId)] = Data(true, _price, _ipfsData);\n emit LogCreateSale(_buyer, _videoId, _price, _ipfsData);\n }\n\n /**\n * @dev Remove the sale from the registry\n * Only the Store contract or the owner can remove a sale\n */\n function remove(address _buyer, string _videoId)\n public onlyOwnerOrStore {\n delete _sales[_buyer][keccak256(_videoId)];\n emit LogRemoveSale(_buyer, _videoId);\n }\n\n /**\n * @dev Get information about the sale from the registry\n * Only the Store contract or the owner can remove a sale\n * @return price and ipfsData\n */\n function get(address _buyer, string _videoId) public view returns(uint, string) {\n Data storage _data = _sales[_buyer][keccak256(_videoId)];\n return (\n _data._price,\n _data._ipfsData\n );\n }\n\n function userBoughtVideo(address _buyer, string _videoId) public view returns(bool) {\n return _sales[_buyer][keccak256(_videoId)]._isRegistered;\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", - "exportedSymbols": { - "Sales": [ - 1277 - ] - }, - "id": 1278, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1098, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:7" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1099, - "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2807, - "src": "26:59:7", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1100, - "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2751, - "src": "86:55:7", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1101, - "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 1097, - "src": "142:24:7", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1102, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "186:7:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1103, - "nodeType": "InheritanceSpecifier", - "src": "186:7:7" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1277, - "linearizedBaseContracts": [ - 1277, - 2806 - ], - "name": "Sales", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 1105, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "201:24:7", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1104, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "201:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "canonicalName": "Sales.Data", - "id": 1112, - "members": [ - { - "constant": false, - "id": 1107, - "name": "_isRegistered", - "nodeType": "VariableDeclaration", - "scope": 1112, - "src": "254:18:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1106, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "254:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1109, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1112, - "src": "282:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1108, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "282:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1111, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1112, - "src": "303:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1110, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "303:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Data", - "nodeType": "StructDefinition", - "scope": 1277, - "src": "232:94:7", - "visibility": "public" - }, - { - "constant": false, - "id": 1118, - "name": "_sales", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "393:60:7", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" - }, - "typeName": { - "id": 1117, - "keyType": { - "id": 1113, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "402:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "393:45:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" - }, - "valueType": { - "id": 1116, - "keyType": { - "id": 1114, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "421:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "412:25:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data)" - }, - "valueType": { - "contractScope": null, - "id": 1115, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "432:4:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": null, - "id": 1128, - "name": "LogCreateSale", - "nodeType": "EventDefinition", - "parameters": { - "id": 1127, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1120, - "indexed": false, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "480:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1119, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "480:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1122, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "496:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1121, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "496:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1124, - "indexed": false, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "513:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1123, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "513:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1126, - "indexed": false, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "526:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1125, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "526:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "479:64:7" - }, - "src": "460:84:7" - }, - { - "anonymous": false, - "documentation": null, - "id": 1134, - "name": "LogRemoveSale", - "nodeType": "EventDefinition", - "parameters": { - "id": 1133, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1130, - "indexed": false, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "569:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1129, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "569:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1132, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "585:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1131, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "585:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "568:33:7" - }, - "src": "549:53:7" - }, - { - "body": { - "id": 1154, - "nodeType": "Block", - "src": "636:107:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1137, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "655:3:7", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "655:10:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 1139, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "669:5:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "655:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1141, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "654:21:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1142, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "680:3:7", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "680:10:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "53746f7265", - "id": 1146, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "715:7:7", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", - "typeString": "literal_string \"Store\"" - }, - "value": "Store" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", - "typeString": "literal_string \"Store\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1144, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "694:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "694:20:7", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "694:29:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "680:43:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1149, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "679:45:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "654:70:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1136, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "646:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "646:79:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1152, - "nodeType": "ExpressionStatement", - "src": "646:79:7" - }, - { - "id": 1153, - "nodeType": "PlaceholderStatement", - "src": "735:1:7" - } - ] - }, - "documentation": null, - "id": 1155, - "name": "onlyOwnerOrStore", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1135, - "nodeType": "ParameterList", - "parameters": [], - "src": "633:2:7" - }, - "src": "608:135:7", - "visibility": "internal" - }, - { - "body": { - "id": 1169, - "nodeType": "Block", - "src": "788:65:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1160, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "798:5:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1161, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "806:3:7", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "806:10:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "798:18:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1164, - "nodeType": "ExpressionStatement", - "src": "798:18:7" - }, - { - "expression": { - "argumentTypes": null, - "id": 1167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1165, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "826:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1166, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1157, - "src": "837:9:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "826:20:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1168, - "nodeType": "ExpressionStatement", - "src": "826:20:7" - } - ] - }, - "documentation": null, - "id": 1170, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1158, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1157, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1170, - "src": "761:18:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1156, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "761:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "760:20:7" - }, - "payable": false, - "returnParameters": { - "id": 1159, - "nodeType": "ParameterList", - "parameters": [], - "src": "788:0:7" - }, - "scope": 1277, - "src": "749:104:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1204, - "nodeType": "Block", - "src": "1406:149:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1195, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1183, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1416:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1188, - "indexExpression": { - "argumentTypes": null, - "id": 1184, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1423:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1416:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1189, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1186, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1441:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1185, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1431:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1431:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1416:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1191, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1459:4:7", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "argumentTypes": null, - "id": 1192, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1465:6:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1193, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1473:9:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1190, - "name": "Data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1112, - "src": "1454:4:7", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$1112_storage_ptr_$", - "typeString": "type(struct Sales.Data storage pointer)" - } - }, - "id": 1194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1454:29:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_memory", - "typeString": "struct Sales.Data memory" - } - }, - "src": "1416:67:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "id": 1196, - "nodeType": "ExpressionStatement", - "src": "1416:67:7" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1198, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1512:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1199, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1520:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1200, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1530:6:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1201, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1538:9:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1197, - "name": "LogCreateSale", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "1498:13:7", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,uint256,string memory)" - } - }, - "id": 1202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1498:50:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1203, - "nodeType": "EmitStatement", - "src": "1493:55:7" - } - ] - }, - "documentation": "@dev registers a sale of a video\nDoes not do any payments - this call only registers the sale\nOnly the Store contract (as well as the owner) can register a sale\n@param _videoId the id of the video\n@param _buyer the buyer of the video (an ethereum address)\n@param _price the price that was paid for the video\n@param _ipfsData a reference to further data that can be found on ipfs", - "id": 1205, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1181, - "modifierName": { - "argumentTypes": null, - "id": 1180, - "name": "onlyOwnerOrStore", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1389:16:7", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1389:16:7" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1179, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1172, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1310:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1171, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1310:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1174, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1326:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1173, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1326:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1176, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1343:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1175, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1343:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1178, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1356:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1177, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1356:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1309:64:7" - }, - "payable": false, - "returnParameters": { - "id": 1182, - "nodeType": "ParameterList", - "parameters": [], - "src": "1406:0:7" - }, - "scope": 1277, - "src": "1294:261:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1228, - "nodeType": "Block", - "src": "1766:105:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1221, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1776:42:7", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1214, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1783:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1216, - "indexExpression": { - "argumentTypes": null, - "id": 1215, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1790:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1783:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1220, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1218, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1808:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1217, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1798:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1219, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1798:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1783:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1222, - "nodeType": "ExpressionStatement", - "src": "1776:42:7" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1224, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1847:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1225, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1855:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1223, - "name": "LogRemoveSale", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1134, - "src": "1833:13:7", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory)" - } - }, - "id": 1226, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1833:31:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1227, - "nodeType": "EmitStatement", - "src": "1828:36:7" - } - ] - }, - "documentation": "@dev Remove the sale from the registry\nOnly the Store contract or the owner can remove a sale", - "id": 1229, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1212, - "modifierName": { - "argumentTypes": null, - "id": 1211, - "name": "onlyOwnerOrStore", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1749:16:7", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1749:16:7" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1210, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1207, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1701:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1206, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1701:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1209, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1717:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1208, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1717:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1700:33:7" - }, - "payable": false, - "returnParameters": { - "id": 1213, - "nodeType": "ParameterList", - "parameters": [], - "src": "1766:0:7" - }, - "scope": 1277, - "src": "1685:186:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1256, - "nodeType": "Block", - "src": "2131:155:7", - "statements": [ - { - "assignments": [ - 1241 - ], - "declarations": [ - { - "constant": false, - "id": 1241, - "name": "_data", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2141:18:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data" - }, - "typeName": { - "contractScope": null, - "id": 1240, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "2141:4:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1249, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1242, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2162:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1244, - "indexExpression": { - "argumentTypes": null, - "id": 1243, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1231, - "src": "2169:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2162:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1248, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1246, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1233, - "src": "2187:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1245, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2177:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1247, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2177:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2162:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2141:56:7" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1250, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2228:5:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data storage pointer" - } - }, - "id": 1251, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_price", - "nodeType": "MemberAccess", - "referencedDeclaration": 1109, - "src": "2228:12:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1252, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2254:5:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data storage pointer" - } - }, - "id": 1253, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 1111, - "src": "2254:15:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "id": 1254, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2214:65:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_string_storage_$", - "typeString": "tuple(uint256,string storage ref)" - } - }, - "functionReturnParameters": 1239, - "id": 1255, - "nodeType": "Return", - "src": "2207:72:7" - } - ] - }, - "documentation": "@dev Get information about the sale from the registry\nOnly the Store contract or the owner can remove a sale\n@return price and ipfsData", - "id": 1257, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1234, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1231, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2063:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1230, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2063:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1233, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2079:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1232, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2079:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2062:33:7" - }, - "payable": false, - "returnParameters": { - "id": 1239, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1236, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2117:4:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1235, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2117:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1238, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2123:6:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1237, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2123:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2116:14:7" - }, - "scope": 1277, - "src": "2050:236:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1275, - "nodeType": "Block", - "src": "2376:73:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1266, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2393:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1268, - "indexExpression": { - "argumentTypes": null, - "id": 1267, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2400:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2393:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1272, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1270, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "2418:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1269, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2408:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2408:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2393:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "id": 1273, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_isRegistered", - "nodeType": "MemberAccess", - "referencedDeclaration": 1107, - "src": "2393:49:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1265, - "id": 1274, - "nodeType": "Return", - "src": "2386:56:7" - } - ] - }, - "documentation": null, - "id": 1276, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userBoughtVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1262, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1259, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2317:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1258, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2317:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1261, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2333:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1260, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2333:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2316:33:7" - }, - "payable": false, - "returnParameters": { - "id": 1265, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1264, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2370:4:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1263, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2370:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2369:6:7" - }, - "scope": 1277, - "src": "2292:157:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1278, - "src": "168:2283:7" - } - ], - "src": "0:2452:7" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", - "exportedSymbols": { - "Sales": [ - 1277 - ] - }, - "id": 1278, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1098, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:7" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1099, - "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2807, - "src": "26:59:7", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1100, - "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2751, - "src": "86:55:7", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1101, - "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 1097, - "src": "142:24:7", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1102, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "186:7:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1103, - "nodeType": "InheritanceSpecifier", - "src": "186:7:7" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1277, - "linearizedBaseContracts": [ - 1277, - 2806 - ], - "name": "Sales", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 1105, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "201:24:7", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1104, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "201:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "canonicalName": "Sales.Data", - "id": 1112, - "members": [ - { - "constant": false, - "id": 1107, - "name": "_isRegistered", - "nodeType": "VariableDeclaration", - "scope": 1112, - "src": "254:18:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1106, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "254:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1109, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1112, - "src": "282:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1108, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "282:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1111, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1112, - "src": "303:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1110, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "303:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Data", - "nodeType": "StructDefinition", - "scope": 1277, - "src": "232:94:7", - "visibility": "public" - }, - { - "constant": false, - "id": 1118, - "name": "_sales", - "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "393:60:7", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" - }, - "typeName": { - "id": 1117, - "keyType": { - "id": 1113, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "402:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "393:45:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" - }, - "valueType": { - "id": 1116, - "keyType": { - "id": 1114, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "421:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "412:25:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data)" - }, - "valueType": { - "contractScope": null, - "id": 1115, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "432:4:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": null, - "id": 1128, - "name": "LogCreateSale", - "nodeType": "EventDefinition", - "parameters": { - "id": 1127, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1120, - "indexed": false, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "480:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1119, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "480:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1122, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "496:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1121, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "496:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1124, - "indexed": false, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "513:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1123, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "513:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1126, - "indexed": false, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "526:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1125, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "526:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "479:64:7" - }, - "src": "460:84:7" - }, - { - "anonymous": false, - "documentation": null, - "id": 1134, - "name": "LogRemoveSale", - "nodeType": "EventDefinition", - "parameters": { - "id": 1133, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1130, - "indexed": false, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "569:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1129, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "569:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1132, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "585:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1131, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "585:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "568:33:7" - }, - "src": "549:53:7" - }, - { - "body": { - "id": 1154, - "nodeType": "Block", - "src": "636:107:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1137, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "655:3:7", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "655:10:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 1139, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "669:5:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "655:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1141, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "654:21:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1142, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "680:3:7", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "680:10:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "53746f7265", - "id": 1146, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "715:7:7", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", - "typeString": "literal_string \"Store\"" - }, - "value": "Store" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", - "typeString": "literal_string \"Store\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1144, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "694:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "694:20:7", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "694:29:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "680:43:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1149, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "679:45:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "654:70:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1136, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "646:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "646:79:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1152, - "nodeType": "ExpressionStatement", - "src": "646:79:7" - }, - { - "id": 1153, - "nodeType": "PlaceholderStatement", - "src": "735:1:7" - } - ] - }, - "documentation": null, - "id": 1155, - "name": "onlyOwnerOrStore", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1135, - "nodeType": "ParameterList", - "parameters": [], - "src": "633:2:7" - }, - "src": "608:135:7", - "visibility": "internal" - }, - { - "body": { - "id": 1169, - "nodeType": "Block", - "src": "788:65:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1160, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "798:5:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1161, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "806:3:7", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "806:10:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "798:18:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1164, - "nodeType": "ExpressionStatement", - "src": "798:18:7" - }, - { - "expression": { - "argumentTypes": null, - "id": 1167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1165, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "826:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1166, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1157, - "src": "837:9:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "826:20:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1168, - "nodeType": "ExpressionStatement", - "src": "826:20:7" - } - ] - }, - "documentation": null, - "id": 1170, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1158, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1157, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1170, - "src": "761:18:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1156, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "761:8:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "760:20:7" - }, - "payable": false, - "returnParameters": { - "id": 1159, - "nodeType": "ParameterList", - "parameters": [], - "src": "788:0:7" - }, - "scope": 1277, - "src": "749:104:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1204, - "nodeType": "Block", - "src": "1406:149:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1195, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1183, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1416:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1188, - "indexExpression": { - "argumentTypes": null, - "id": 1184, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1423:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1416:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1189, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1186, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1441:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1185, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1431:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1431:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1416:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1191, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1459:4:7", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "argumentTypes": null, - "id": 1192, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1465:6:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1193, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1473:9:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1190, - "name": "Data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1112, - "src": "1454:4:7", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$1112_storage_ptr_$", - "typeString": "type(struct Sales.Data storage pointer)" - } - }, - "id": 1194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1454:29:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_memory", - "typeString": "struct Sales.Data memory" - } - }, - "src": "1416:67:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "id": 1196, - "nodeType": "ExpressionStatement", - "src": "1416:67:7" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1198, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1512:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1199, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1520:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1200, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1530:6:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1201, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1538:9:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1197, - "name": "LogCreateSale", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "1498:13:7", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,uint256,string memory)" - } - }, - "id": 1202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1498:50:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1203, - "nodeType": "EmitStatement", - "src": "1493:55:7" - } - ] - }, - "documentation": "@dev registers a sale of a video\nDoes not do any payments - this call only registers the sale\nOnly the Store contract (as well as the owner) can register a sale\n@param _videoId the id of the video\n@param _buyer the buyer of the video (an ethereum address)\n@param _price the price that was paid for the video\n@param _ipfsData a reference to further data that can be found on ipfs", - "id": 1205, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1181, - "modifierName": { - "argumentTypes": null, - "id": 1180, - "name": "onlyOwnerOrStore", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1389:16:7", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1389:16:7" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1179, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1172, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1310:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1171, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1310:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1174, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1326:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1173, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1326:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1176, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1343:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1175, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1343:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1178, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1356:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1177, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1356:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1309:64:7" - }, - "payable": false, - "returnParameters": { - "id": 1182, - "nodeType": "ParameterList", - "parameters": [], - "src": "1406:0:7" - }, - "scope": 1277, - "src": "1294:261:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1228, - "nodeType": "Block", - "src": "1766:105:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1221, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1776:42:7", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1214, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1783:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1216, - "indexExpression": { - "argumentTypes": null, - "id": 1215, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1790:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1783:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1220, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1218, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1808:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1217, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1798:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1219, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1798:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1783:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1222, - "nodeType": "ExpressionStatement", - "src": "1776:42:7" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1224, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1847:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1225, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1855:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1223, - "name": "LogRemoveSale", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1134, - "src": "1833:13:7", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory)" - } - }, - "id": 1226, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1833:31:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1227, - "nodeType": "EmitStatement", - "src": "1828:36:7" - } - ] - }, - "documentation": "@dev Remove the sale from the registry\nOnly the Store contract or the owner can remove a sale", - "id": 1229, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1212, - "modifierName": { - "argumentTypes": null, - "id": 1211, - "name": "onlyOwnerOrStore", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1749:16:7", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1749:16:7" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1210, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1207, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1701:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1206, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1701:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1209, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1717:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1208, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1717:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1700:33:7" - }, - "payable": false, - "returnParameters": { - "id": 1213, - "nodeType": "ParameterList", - "parameters": [], - "src": "1766:0:7" - }, - "scope": 1277, - "src": "1685:186:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1256, - "nodeType": "Block", - "src": "2131:155:7", - "statements": [ - { - "assignments": [ - 1241 - ], - "declarations": [ - { - "constant": false, - "id": 1241, - "name": "_data", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2141:18:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data" - }, - "typeName": { - "contractScope": null, - "id": 1240, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "2141:4:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1249, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1242, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2162:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1244, - "indexExpression": { - "argumentTypes": null, - "id": 1243, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1231, - "src": "2169:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2162:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1248, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1246, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1233, - "src": "2187:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1245, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2177:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1247, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2177:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2162:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2141:56:7" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1250, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2228:5:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data storage pointer" - } - }, - "id": 1251, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_price", - "nodeType": "MemberAccess", - "referencedDeclaration": 1109, - "src": "2228:12:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1252, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2254:5:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", - "typeString": "struct Sales.Data storage pointer" - } - }, - "id": 1253, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 1111, - "src": "2254:15:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "id": 1254, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2214:65:7", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_string_storage_$", - "typeString": "tuple(uint256,string storage ref)" - } - }, - "functionReturnParameters": 1239, - "id": 1255, - "nodeType": "Return", - "src": "2207:72:7" - } - ] - }, - "documentation": "@dev Get information about the sale from the registry\nOnly the Store contract or the owner can remove a sale\n@return price and ipfsData", - "id": 1257, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1234, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1231, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2063:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1230, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2063:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1233, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2079:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1232, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2079:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2062:33:7" - }, - "payable": false, - "returnParameters": { - "id": 1239, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1236, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2117:4:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1235, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2117:4:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1238, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2123:6:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1237, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2123:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2116:14:7" - }, - "scope": 1277, - "src": "2050:236:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1275, - "nodeType": "Block", - "src": "2376:73:7", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1266, - "name": "_sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2393:6:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" - } - }, - "id": 1268, - "indexExpression": { - "argumentTypes": null, - "id": 1267, - "name": "_buyer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2400:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2393:14:7", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", - "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" - } - }, - "id": 1272, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1270, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "2418:8:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1269, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2408:9:7", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2408:19:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2393:35:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", - "typeString": "struct Sales.Data storage ref" - } - }, - "id": 1273, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_isRegistered", - "nodeType": "MemberAccess", - "referencedDeclaration": 1107, - "src": "2393:49:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1265, - "id": 1274, - "nodeType": "Return", - "src": "2386:56:7" - } - ] - }, - "documentation": null, - "id": 1276, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userBoughtVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1262, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1259, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2317:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1258, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2317:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1261, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2333:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1260, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2333:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2316:33:7" - }, - "payable": false, - "returnParameters": { - "id": 1265, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1264, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2370:4:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1263, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2370:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2369:6:7" - }, - "scope": 1277, - "src": "2292:157:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1278, - "src": "168:2283:7" - } - ], - "src": "0:2452:7" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.676Z" -} \ No newline at end of file +{"contractName":"Sales","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_price","type":"uint256"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_price","type":"uint256"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"uint256"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userBoughtVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137f83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061127b806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b5061012661083b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d610861565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610886565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c7565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e2e565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f83565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106f557805182526020820191506020810190506020830392506106d0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006107659190611162565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107fc5780820151818401526020810190506107e1565b50505050905090810190601f1680156108295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b60208310151561090257805182526020820191506020810190506020830392506108dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561096b5780518252602082019150602081019050602083039250610946565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b495750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610adf57600080fd5b505af1158015610af3573d6000803e3d6000fd5b505050506040513d6020811015610b0957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b5457600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b602083101515610bed5780518252602082019150602081019050602083039250610bc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610c565780518252602082019150602081019050602083039250610c31565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610cdf9291906111aa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610d84578082015181840152602081019050610d69565b50505050905090810190601f168015610db15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610dea578082015181840152602081019050610dcf565b50505050905090810190601f168015610e175780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e8957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ec557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156110035780518252602082019150602081019050602083039250610fde565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561106c5780518252602082019150602081019050602083039250611047565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061118857506111a7565b601f0160209004906000526020600020908101906111a6919061122a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111eb57805160ff1916838001178555611219565b82800160010185558215611219579182015b828111156112185782518255916020019190600101906111fd565b5b509050611226919061122a565b5090565b61124c91905b80821115611248576000816000905550600101611230565b5090565b905600a165627a7a723058201aaddd84b18f5fe6856afbd2c787b8b73d1bd4cf7bdb59f0e6335c5734f0708b0029"} \ No newline at end of file diff --git a/build/contracts/SendEther.json b/build/contracts/SendEther.json index 1b18e45..8f37432 100644 --- a/build/contracts/SendEther.json +++ b/build/contracts/SendEther.json @@ -1,1271 +1 @@ -{ - "contractName": "SendEther", - "abi": [ - { - "payable": false, - "stateMutability": "nonpayable", - "type": "fallback" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "from", - "type": "address" - }, - { - "indexed": false, - "name": "to", - "type": "address" - }, - { - "indexed": false, - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "name": "description", - "type": "string" - } - ], - "name": "LogSendEther", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_to", - "type": "address" - }, - { - "name": "_description", - "type": "string" - } - ], - "name": "transfer", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": true, - "stateMutability": "payable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50610272806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a723058204fc2e97784d8979adaf76927420bff954e5a201667fd259b4c9d7b615c2500f70029", - "deployedBytecode": "0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a723058204fc2e97784d8979adaf76927420bff954e5a201667fd259b4c9d7b615c2500f70029", - "sourceMap": "133:734:8:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;133:734:8;;;;;;;", - "deployedSourceMap": "133:734:8:-;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;133:734:8;378:8;;;652:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;727:4;744:3;:12;;:23;757:9;744:23;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;744:23:8;782:54;795:10;807:3;812:9;823:12;782:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;782:54:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;853:4;846:11;;652:212;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\n/**\n * @title SendEther\n * @dev A Contract that wraps the native transfer function and logs an event.\n */\n\ncontract SendEther {\n\n event LogSendEther(\n address from,\n address to,\n uint value,\n string description\n );\n\n // If someone accidentally sends ether to this contract, revert;\n function () public {\n revert();\n }\n\n /**\n * @dev Transfer ether to address _to, providing a description\n * The only difference with sending ETH directly is that the action is logged\n * @param _to recipient of the ETH\n * @param _description A description to log\n */\n function transfer(address _to, string _description) public payable returns(bool) {\n _to.transfer(msg.value);\n emit LogSendEther(msg.sender, _to, msg.value, _description);\n return true;\n }\n\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/SendEther.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/SendEther.sol", - "exportedSymbols": { - "SendEther": [ - 1325 - ] - }, - "id": 1326, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1279, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:8" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@title SendEther\n@dev A Contract that wraps the native transfer function and logs an event.", - "fullyImplemented": true, - "id": 1325, - "linearizedBaseContracts": [ - 1325 - ], - "name": "SendEther", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": null, - "id": 1289, - "name": "LogSendEther", - "nodeType": "EventDefinition", - "parameters": { - "id": 1288, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1281, - "indexed": false, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "187:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1280, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "187:7:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1283, - "indexed": false, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "209:10:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1282, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "209:7:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1285, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "229:10:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1284, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "229:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1287, - "indexed": false, - "name": "description", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "249:18:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1286, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "249:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "177:96:8" - }, - "src": "159:115:8" - }, - { - "body": { - "id": 1295, - "nodeType": "Block", - "src": "368:25:8", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1292, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3206, - 3207 - ], - "referencedDeclaration": 3206, - "src": "378:6:8", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "378:8:8", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1294, - "nodeType": "ExpressionStatement", - "src": "378:8:8" - } - ] - }, - "documentation": null, - "id": 1296, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1290, - "nodeType": "ParameterList", - "parameters": [], - "src": "358:2:8" - }, - "payable": false, - "returnParameters": { - "id": 1291, - "nodeType": "ParameterList", - "parameters": [], - "src": "368:0:8" - }, - "scope": 1325, - "src": "349:44:8", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1323, - "nodeType": "Block", - "src": "734:130:8", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1308, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "757:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1309, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "757:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1305, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "744:3:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "744:12:8", - "typeDescriptions": { - "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256)" - } - }, - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "744:23:8", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1311, - "nodeType": "ExpressionStatement", - "src": "744:23:8" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1313, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "795:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "795:10:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1315, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "807:3:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1316, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "812:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1317, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "812:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1318, - "name": "_description", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1300, - "src": "823:12:8", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1312, - "name": "LogSendEther", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1289, - "src": "782:12:8", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,address,uint256,string memory)" - } - }, - "id": 1319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "782:54:8", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1320, - "nodeType": "EmitStatement", - "src": "777:59:8" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1321, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "853:4:8", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1304, - "id": 1322, - "nodeType": "Return", - "src": "846:11:8" - } - ] - }, - "documentation": "@dev Transfer ether to address _to, providing a description\nThe only difference with sending ETH directly is that the action is logged\n@param _to recipient of the ETH\n@param _description A description to log", - "id": 1324, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1301, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1298, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1324, - "src": "670:11:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1297, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "670:7:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1300, - "name": "_description", - "nodeType": "VariableDeclaration", - "scope": 1324, - "src": "683:19:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1299, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "683:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "669:34:8" - }, - "payable": true, - "returnParameters": { - "id": 1304, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1303, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1324, - "src": "727:4:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1302, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "727:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "726:6:8" - }, - "scope": 1325, - "src": "652:212:8", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1326, - "src": "133:734:8" - } - ], - "src": "0:868:8" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/SendEther.sol", - "exportedSymbols": { - "SendEther": [ - 1325 - ] - }, - "id": 1326, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1279, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:8" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": "@title SendEther\n@dev A Contract that wraps the native transfer function and logs an event.", - "fullyImplemented": true, - "id": 1325, - "linearizedBaseContracts": [ - 1325 - ], - "name": "SendEther", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": null, - "id": 1289, - "name": "LogSendEther", - "nodeType": "EventDefinition", - "parameters": { - "id": 1288, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1281, - "indexed": false, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "187:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1280, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "187:7:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1283, - "indexed": false, - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "209:10:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1282, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "209:7:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1285, - "indexed": false, - "name": "value", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "229:10:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1284, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "229:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1287, - "indexed": false, - "name": "description", - "nodeType": "VariableDeclaration", - "scope": 1289, - "src": "249:18:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1286, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "249:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "177:96:8" - }, - "src": "159:115:8" - }, - { - "body": { - "id": 1295, - "nodeType": "Block", - "src": "368:25:8", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1292, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3206, - 3207 - ], - "referencedDeclaration": 3206, - "src": "378:6:8", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "378:8:8", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1294, - "nodeType": "ExpressionStatement", - "src": "378:8:8" - } - ] - }, - "documentation": null, - "id": 1296, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1290, - "nodeType": "ParameterList", - "parameters": [], - "src": "358:2:8" - }, - "payable": false, - "returnParameters": { - "id": 1291, - "nodeType": "ParameterList", - "parameters": [], - "src": "368:0:8" - }, - "scope": 1325, - "src": "349:44:8", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1323, - "nodeType": "Block", - "src": "734:130:8", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1308, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "757:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1309, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "757:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1305, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "744:3:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "744:12:8", - "typeDescriptions": { - "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256)" - } - }, - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "744:23:8", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1311, - "nodeType": "ExpressionStatement", - "src": "744:23:8" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1313, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "795:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "795:10:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1315, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "807:3:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1316, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "812:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1317, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "812:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1318, - "name": "_description", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1300, - "src": "823:12:8", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1312, - "name": "LogSendEther", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1289, - "src": "782:12:8", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,address,uint256,string memory)" - } - }, - "id": 1319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "782:54:8", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1320, - "nodeType": "EmitStatement", - "src": "777:59:8" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1321, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "853:4:8", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1304, - "id": 1322, - "nodeType": "Return", - "src": "846:11:8" - } - ] - }, - "documentation": "@dev Transfer ether to address _to, providing a description\nThe only difference with sending ETH directly is that the action is logged\n@param _to recipient of the ETH\n@param _description A description to log", - "id": 1324, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1301, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1298, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 1324, - "src": "670:11:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1297, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "670:7:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1300, - "name": "_description", - "nodeType": "VariableDeclaration", - "scope": 1324, - "src": "683:19:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1299, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "683:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "669:34:8" - }, - "payable": true, - "returnParameters": { - "id": 1304, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1303, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1324, - "src": "727:4:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1302, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "727:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "726:6:8" - }, - "scope": 1325, - "src": "652:212:8", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1326, - "src": "133:734:8" - } - ], - "src": "0:868:8" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.677Z" -} \ No newline at end of file +{"contractName":"SendEther","abi":[{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"description","type":"string"}],"name":"LogSendEther","type":"event"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_description","type":"string"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50610272806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a723058201f286e16aae3f1b4e9533daa7c20efd923f429ccbe919394bbfb6aaf3a9283070029"} \ No newline at end of file diff --git a/build/contracts/StandardToken.json b/build/contracts/StandardToken.json index caca7cc..30102ca 100644 --- a/build/contracts/StandardToken.json +++ b/build/contracts/StandardToken.json @@ -1,6297 +1 @@ -{ - "contractName": "StandardToken", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "name": "balance", - "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" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "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": false, - "inputs": [ - { - "name": "_from", - "type": "address" - }, - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - }, - { - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "name": "remaining", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_addedValue", - "type": "uint256" - } - ], - "name": "increaseApproval", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseApproval", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50610f1f806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049d565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610789565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a63565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c39565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e35565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156104dc57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506105ad83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061064283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106988382610ebc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561089a576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092e565b6108ad8382610ebc90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa057600080fd5b610af282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8782600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610cca82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610eca57fe5b818303905092915050565b6000808284019050838110151515610ee957fe5b80915050929150505600a165627a7a72305820c54bdffae225221a3e5d945dd33e8dbd7031c29924d49fb58969d68b7b48f1ae0029", - "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049d565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610789565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a63565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c39565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e35565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156104dc57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506105ad83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061064283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106988382610ebc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561089a576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092e565b6108ad8382610ebc90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa057600080fd5b610af282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8782600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610cca82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610eca57fe5b818303905092915050565b6000808284019050838110151515610ee957fe5b80915050929150505600a165627a7a72305820c54bdffae225221a3e5d945dd33e8dbd7031c29924d49fb58969d68b7b48f1ae0029", - "sourceMap": "345:3095:20:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;345:3095:20;;;;;;;", - "deployedSourceMap": "345:3095:20:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1884:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1884:183:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;179:26:19;;;;;;;;;;;;;;;;;;;;;;;728:533:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;728:533:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3033:404;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3033:404:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;973:111:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;973:111:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:334;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:334:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2766:263:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2766:263:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2386:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2386:140:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1884:183;1951:4;1995:6;1963:7;:19;1971:10;1963:19;;;;;;;;;;;;;;;:29;1983:8;1963:29;;;;;;;;;;;;;;;:38;;;;2028:8;2007:38;;2016:10;2007:38;;;2038:6;2007:38;;;;;;;;;;;;;;;;;;2058:4;2051:11;;1884:183;;;;:::o;179:26:19:-;;;;:::o;728:533:20:-;810:4;855:18;845:1;830:17;;:3;:17;;;;822:26;;;;;;;;876:7;:14;884:5;876:14;;;;;;;;;;;;;;;:26;891:10;876:26;;;;;;;;;;;;;;;;855:47;;1074:27;1094:6;1074:8;:15;1083:5;1074:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;1056:8;:15;1065:5;1056:15;;;;;;;;;;;;;;;:45;;;;1123:25;1141:6;1123:8;:13;1132:3;1123:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;1107:8;:13;1116:3;1107:13;;;;;;;;;;;;;;;:41;;;;1183:22;1198:6;1183:10;:14;;:22;;;;:::i;:::-;1154:7;:14;1162:5;1154:14;;;;;;;;;;;;;;;:26;1169:10;1154:26;;;;;;;;;;;;;;;:51;;;;1227:3;1211:28;;1220:5;1211:28;;;1232:6;1211:28;;;;;;;;;;;;;;;;;;1252:4;1245:11;;728:533;;;;;;:::o;3033:404::-;3114:12;3134:13;3150:7;:19;3158:10;3150:19;;;;;;;;;;;;;;;:29;3170:8;3150:29;;;;;;;;;;;;;;;;3134:45;;3208:8;3189:16;:27;3185:164;;;3258:1;3226:7;:19;3234:10;3226:19;;;;;;;;;;;;;;;:29;3246:8;3226:29;;;;;;;;;;;;;;;:33;;;;3185:164;;;3312:30;3325:16;3312:8;:12;;:30;;;;:::i;:::-;3280:7;:19;3288:10;3280:19;;;;;;;;;;;;;;;:29;3300:8;3280:29;;;;;;;;;;;;;;;:62;;;;3185:164;3375:8;3354:61;;3363:10;3354:61;;;3385:7;:19;3393:10;3385:19;;;;;;;;;;;;;;;:29;3405:8;3385:29;;;;;;;;;;;;;;;;3354:61;;;;;;;;;;;;;;;;;;3428:4;3421:11;;3033:404;;;;;:::o;973:111:17:-;1033:15;1063:8;:16;1072:6;1063:16;;;;;;;;;;;;;;;;1056:23;;973:111;;;:::o;437:334::-;500:4;535:1;520:17;;:3;:17;;;;512:26;;;;;;;;631:32;656:6;631:8;:20;640:10;631:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;608:8;:20;617:10;608:20;;;;;;;;;;;;;;;:55;;;;685:25;703:6;685:8;:13;694:3;685:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;669:8;:13;678:3;669:13;;;;;;;;;;;;;;;:41;;;;737:3;716:33;;725:10;716:33;;;742:6;716:33;;;;;;;;;;;;;;;;;;762:4;755:11;;437:334;;;;:::o;2766:263:20:-;2842:12;2894:46;2928:11;2894:7;:19;2902:10;2894:19;;;;;;;;;;;;;;;:29;2914:8;2894:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;2862:7;:19;2870:10;2862:19;;;;;;;;;;;;;;;:29;2882:8;2862:29;;;;;;;;;;;;;;;:78;;;;2967:8;2946:61;;2955:10;2946:61;;;2977:7;:19;2985:10;2977:19;;;;;;;;;;;;;;;:29;2997:8;2977:29;;;;;;;;;;;;;;;;2946:61;;;;;;;;;;;;;;;;;;3020:4;3013:11;;2766:263;;;;:::o;2386:140::-;2464:17;2496:7;:15;2504:6;2496:15;;;;;;;;;;;;;;;:25;2512:8;2496:25;;;;;;;;;;;;;;;;2489:32;;2386:140;;;;:::o;562:114:15:-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;680:133::-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o", - "source": "pragma solidity ^0.4.11;\n\n\nimport './BasicToken.sol';\nimport './ERC20.sol';\n\n\n/**\n * @title Standard ERC20 token\n *\n * @dev Implementation of the basic standard token.\n * @dev https://github.com/ethereum/EIPs/issues/20\n * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol\n */\ncontract StandardToken is ERC20, BasicToken {\n\n mapping (address => mapping (address => uint256)) allowed;\n\n\n /**\n * @dev Transfer tokens from one address to another\n * @param _from address The address which you want to send tokens from\n * @param _to address The address which you want to transfer to\n * @param _value uint256 the amount of tokens to be transferred\n */\n function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {\n require(_to != address(0));\n\n uint256 _allowance = allowed[_from][msg.sender];\n\n // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met\n // require (_value <= _allowance);\n\n balances[_from] = balances[_from].sub(_value);\n balances[_to] = balances[_to].add(_value);\n allowed[_from][msg.sender] = _allowance.sub(_value);\n Transfer(_from, _to, _value);\n return true;\n }\n\n /**\n * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n *\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\n * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\n * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\n * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n * @param _spender The address which will spend the funds.\n * @param _value The amount of tokens to be spent.\n */\n function approve(address _spender, uint256 _value) public returns (bool) {\n allowed[msg.sender][_spender] = _value;\n Approval(msg.sender, _spender, _value);\n return true;\n }\n\n /**\n * @dev Function to check the amount of tokens that an owner allowed to a spender.\n * @param _owner address The address which owns the funds.\n * @param _spender address The address which will spend the funds.\n * @return A uint256 specifying the amount of tokens still available for the spender.\n */\n function allowance(address _owner, address _spender) public constant returns (uint256 remaining) {\n return allowed[_owner][_spender];\n }\n\n /**\n * approve should be called when allowed[_spender] == 0. To increment\n * allowed value is better to use this function to avoid 2 calls (and wait until\n * the first transaction is mined)\n * From MonolithDAO Token.sol\n */\n function increaseApproval (address _spender, uint _addedValue)\n returns (bool success) {\n allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);\n Approval(msg.sender, _spender, allowed[msg.sender][_spender]);\n return true;\n }\n\n function decreaseApproval (address _spender, uint _subtractedValue)\n returns (bool success) {\n uint oldValue = allowed[msg.sender][_spender];\n if (_subtractedValue > oldValue) {\n allowed[msg.sender][_spender] = 0;\n } else {\n allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);\n }\n Approval(msg.sender, _spender, allowed[msg.sender][_spender]);\n return true;\n }\n\n}\n", - "sourcePath": "zeppelin-solidity/contracts/token/StandardToken.sol", - "ast": { - "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", - "exportedSymbols": { - "StandardToken": [ - 3186 - ] - }, - "id": 3187, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2957, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:20" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", - "file": "./BasicToken.sol", - "id": 2958, - "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2884, - "src": "27:26:20", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", - "file": "./ERC20.sol", - "id": 2959, - "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2927, - "src": "54:21:20", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2960, - "name": "ERC20", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2926, - "src": "371:5:20", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$2926", - "typeString": "contract ERC20" - } - }, - "id": 2961, - "nodeType": "InheritanceSpecifier", - "src": "371:5:20" - }, - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2962, - "name": "BasicToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2883, - "src": "378:10:20", - "typeDescriptions": { - "typeIdentifier": "t_contract$_BasicToken_$2883", - "typeString": "contract BasicToken" - } - }, - "id": 2963, - "nodeType": "InheritanceSpecifier", - "src": "378:10:20" - } - ], - "contractDependencies": [ - 2883, - 2926, - 2955 - ], - "contractKind": "contract", - "documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\n@dev https://github.com/ethereum/EIPs/issues/20\n@dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol", - "fullyImplemented": true, - "id": 3186, - "linearizedBaseContracts": [ - 3186, - 2883, - 2926, - 2955 - ], - "name": "StandardToken", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2969, - "name": "allowed", - "nodeType": "VariableDeclaration", - "scope": 3186, - "src": "394:57:20", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "typeName": { - "id": 2968, - "keyType": { - "id": 2964, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "403:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "394:49:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "valueType": { - "id": 2967, - "keyType": { - "id": 2965, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "423:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "414:28:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 2966, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "434:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "body": { - "id": 3039, - "nodeType": "Block", - "src": "816:445:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2985, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2981, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "830:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2983, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "845:1:20", - "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": 2982, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "837:7:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2984, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "837:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "830:17:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2980, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "822:7:20", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2986, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "822:26:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2987, - "nodeType": "ExpressionStatement", - "src": "822:26:20" - }, - { - "assignments": [ - 2989 - ], - "declarations": [ - { - "constant": false, - "id": 2989, - "name": "_allowance", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "855:18:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2988, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "855:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2996, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2990, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "876:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 2992, - "indexExpression": { - "argumentTypes": null, - "id": 2991, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "884:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "876:14:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2995, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2993, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "891:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2994, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "891:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "876:26:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "855:47:20" - }, - { - "expression": { - "argumentTypes": null, - "id": 3006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2997, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1056:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2999, - "indexExpression": { - "argumentTypes": null, - "id": 2998, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1065:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1056:15:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3004, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1094:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3000, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1074:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3002, - "indexExpression": { - "argumentTypes": null, - "id": 3001, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1083:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1074:15:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1074:19:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3005, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1074:27:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1056:45:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3007, - "nodeType": "ExpressionStatement", - "src": "1056:45:20" - }, - { - "expression": { - "argumentTypes": null, - "id": 3017, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3008, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1107:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3010, - "indexExpression": { - "argumentTypes": null, - "id": 3009, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "1116:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1107:13:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3015, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1141:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3011, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1123:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3013, - "indexExpression": { - "argumentTypes": null, - "id": 3012, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "1132:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1123:13:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3014, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 2749, - "src": "1123:17:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1123:25:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1107:41:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3018, - "nodeType": "ExpressionStatement", - "src": "1107:41:20" - }, - { - "expression": { - "argumentTypes": null, - "id": 3029, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3019, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "1154:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3023, - "indexExpression": { - "argumentTypes": null, - "id": 3020, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1162:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1154:14:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3024, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3021, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1169:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1169:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1154:26:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3027, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1198:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 3025, - "name": "_allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2989, - "src": "1183:10:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1183:14:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1183:22:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1154:51:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3030, - "nodeType": "ExpressionStatement", - "src": "1154:51:20" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3032, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1220:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3033, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "1227:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3034, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1232:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3031, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "1211:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1211:28:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3036, - "nodeType": "ExpressionStatement", - "src": "1211:28:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3037, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1252:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2979, - "id": 3038, - "nodeType": "Return", - "src": "1245:11:20" - } - ] - }, - "documentation": "@dev Transfer tokens from one address to another\n@param _from address The address which you want to send tokens from\n@param _to address The address which you want to transfer to\n@param _value uint256 the amount of tokens to be transferred", - "id": 3040, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2976, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2971, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "750:13:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2970, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "750:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2973, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "765:11:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2972, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "765:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2975, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "778:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2974, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "778:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "749:44:20" - }, - "payable": false, - "returnParameters": { - "id": 2979, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2978, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "810:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2977, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "810:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "809:6:20" - }, - "scope": 3186, - "src": "728:533:20", - "stateMutability": "nonpayable", - "superFunction": 2908, - "visibility": "public" - }, - { - "body": { - "id": 3067, - "nodeType": "Block", - "src": "1957:110:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3056, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3049, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "1963:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3053, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3050, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1971:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1971:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1963:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3054, - "indexExpression": { - "argumentTypes": null, - "id": 3052, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3042, - "src": "1983:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1963:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3055, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3044, - "src": "1995:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1963:38:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3057, - "nodeType": "ExpressionStatement", - "src": "1963:38:20" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3059, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2016:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3060, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2016:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3061, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3042, - "src": "2028:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3062, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3044, - "src": "2038:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3058, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2925, - "src": "2007:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3063, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2007:38:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3064, - "nodeType": "ExpressionStatement", - "src": "2007:38:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3065, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2058:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3048, - "id": 3066, - "nodeType": "Return", - "src": "2051:11:20" - } - ] - }, - "documentation": "@dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\nand the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\nrace condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\nhttps://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n@param _spender The address which will spend the funds.\n@param _value The amount of tokens to be spent.", - "id": 3068, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3042, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3068, - "src": "1901:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3041, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1901:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3044, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3068, - "src": "1919:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1919:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1900:34:20" - }, - "payable": false, - "returnParameters": { - "id": 3048, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3047, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 3068, - "src": "1951:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3046, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1951:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1950:6:20" - }, - "scope": 3186, - "src": "1884:183:20", - "stateMutability": "nonpayable", - "superFunction": 2917, - "visibility": "public" - }, - { - "body": { - "id": 3083, - "nodeType": "Block", - "src": "2483:43:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3077, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2496:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3079, - "indexExpression": { - "argumentTypes": null, - "id": 3078, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "2504:6:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2496:15:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3081, - "indexExpression": { - "argumentTypes": null, - "id": 3080, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3072, - "src": "2512:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2496:25:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3076, - "id": 3082, - "nodeType": "Return", - "src": "2489:32:20" - } - ] - }, - "documentation": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n@param _owner address The address which owns the funds.\n@param _spender address The address which will spend the funds.\n@return A uint256 specifying the amount of tokens still available for the spender.", - "id": 3084, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3073, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3070, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3084, - "src": "2405:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3069, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2405:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3072, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3084, - "src": "2421:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3071, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2421:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2404:34:20" - }, - "payable": false, - "returnParameters": { - "id": 3076, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3075, - "name": "remaining", - "nodeType": "VariableDeclaration", - "scope": 3084, - "src": "2464:17:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3074, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2464:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2463:19:20" - }, - "scope": 3186, - "src": "2386:140:20", - "stateMutability": "view", - "superFunction": 2897, - "visibility": "public" - }, - { - "body": { - "id": 3124, - "nodeType": "Block", - "src": "2856:173:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3108, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3093, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2862:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3097, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3094, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2870:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3095, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2870:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2862:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3098, - "indexExpression": { - "argumentTypes": null, - "id": 3096, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2882:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2862:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3106, - "name": "_addedValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3088, - "src": "2928:11:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3099, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2894:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3102, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3100, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2902:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3101, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2902:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2894:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3104, - "indexExpression": { - "argumentTypes": null, - "id": 3103, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2914:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2894:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 2749, - "src": "2894:33:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3107, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2894:46:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2862:78:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3109, - "nodeType": "ExpressionStatement", - "src": "2862:78:20" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3111, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2955:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2955:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3113, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2967:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3114, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2977:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3117, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3115, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2985:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2985:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2977:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3119, - "indexExpression": { - "argumentTypes": null, - "id": 3118, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2997:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2977:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3110, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2925, - "src": "2946:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3120, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2946:61:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3121, - "nodeType": "ExpressionStatement", - "src": "2946:61:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3122, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3020:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3092, - "id": 3123, - "nodeType": "Return", - "src": "3013:11:20" - } - ] - }, - "documentation": "approve should be called when allowed[_spender] == 0. To increment\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol", - "id": 3125, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "increaseApproval", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3089, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3086, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3125, - "src": "2793:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3085, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2793:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3088, - "name": "_addedValue", - "nodeType": "VariableDeclaration", - "scope": 3125, - "src": "2811:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3087, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2811:4:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2792:36:20" - }, - "payable": false, - "returnParameters": { - "id": 3092, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3091, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3125, - "src": "2842:12:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3090, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2842:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2841:14:20" - }, - "scope": 3186, - "src": "2766:263:20", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 3184, - "nodeType": "Block", - "src": "3128:309:20", - "statements": [ - { - "assignments": [ - 3135 - ], - "declarations": [ - { - "constant": false, - "id": 3135, - "name": "oldValue", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3134:13:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3134, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3134:4:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3142, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3136, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3150:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3139, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3137, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3158:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3158:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3150:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3141, - "indexExpression": { - "argumentTypes": null, - "id": 3140, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3170:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3150:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3134:45:20" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3143, - "name": "_subtractedValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3129, - "src": "3189:16:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "id": 3144, - "name": "oldValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "3208:8:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3189:27:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 3168, - "nodeType": "Block", - "src": "3272:77:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3156, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3280:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3160, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3157, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3288:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3288:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3280:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3161, - "indexExpression": { - "argumentTypes": null, - "id": 3159, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3300:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3280:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3164, - "name": "_subtractedValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3129, - "src": "3325:16:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 3162, - "name": "oldValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "3312:8:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "3312:12:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3312:30:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3280:62:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3167, - "nodeType": "ExpressionStatement", - "src": "3280:62:20" - } - ] - }, - "id": 3169, - "nodeType": "IfStatement", - "src": "3185:164:20", - "trueBody": { - "id": 3155, - "nodeType": "Block", - "src": "3218:48:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3146, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3226:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3150, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3147, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3234:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3234:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3226:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3151, - "indexExpression": { - "argumentTypes": null, - "id": 3149, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3246:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3226:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "30", - "id": 3152, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3258:1:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3226:33:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3154, - "nodeType": "ExpressionStatement", - "src": "3226:33:20" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3171, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3363:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3172, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3363:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3173, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3375:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3174, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3385:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3177, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3175, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3393:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3393:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3385:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3179, - "indexExpression": { - "argumentTypes": null, - "id": 3178, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3405:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3385:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3170, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2925, - "src": "3354:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3354:61:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3181, - "nodeType": "ExpressionStatement", - "src": "3354:61:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3182, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3428:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3133, - "id": 3183, - "nodeType": "Return", - "src": "3421:11:20" - } - ] - }, - "documentation": null, - "id": 3185, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "decreaseApproval", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3130, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3127, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3060:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3060:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3129, - "name": "_subtractedValue", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3078:21:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3128, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3078:4:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3059:41:20" - }, - "payable": false, - "returnParameters": { - "id": 3133, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3132, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3114:12:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3131, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3114:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3113:14:20" - }, - "scope": 3186, - "src": "3033:404:20", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 3187, - "src": "345:3095:20" - } - ], - "src": "0:3441:20" - }, - "legacyAST": { - "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", - "exportedSymbols": { - "StandardToken": [ - 3186 - ] - }, - "id": 3187, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2957, - "literals": [ - "solidity", - "^", - "0.4", - ".11" - ], - "nodeType": "PragmaDirective", - "src": "0:24:20" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", - "file": "./BasicToken.sol", - "id": 2958, - "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2884, - "src": "27:26:20", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", - "file": "./ERC20.sol", - "id": 2959, - "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2927, - "src": "54:21:20", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2960, - "name": "ERC20", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2926, - "src": "371:5:20", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$2926", - "typeString": "contract ERC20" - } - }, - "id": 2961, - "nodeType": "InheritanceSpecifier", - "src": "371:5:20" - }, - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2962, - "name": "BasicToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2883, - "src": "378:10:20", - "typeDescriptions": { - "typeIdentifier": "t_contract$_BasicToken_$2883", - "typeString": "contract BasicToken" - } - }, - "id": 2963, - "nodeType": "InheritanceSpecifier", - "src": "378:10:20" - } - ], - "contractDependencies": [ - 2883, - 2926, - 2955 - ], - "contractKind": "contract", - "documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\n@dev https://github.com/ethereum/EIPs/issues/20\n@dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol", - "fullyImplemented": true, - "id": 3186, - "linearizedBaseContracts": [ - 3186, - 2883, - 2926, - 2955 - ], - "name": "StandardToken", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2969, - "name": "allowed", - "nodeType": "VariableDeclaration", - "scope": 3186, - "src": "394:57:20", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "typeName": { - "id": 2968, - "keyType": { - "id": 2964, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "403:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "394:49:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "valueType": { - "id": 2967, - "keyType": { - "id": 2965, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "423:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "414:28:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 2966, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "434:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "body": { - "id": 3039, - "nodeType": "Block", - "src": "816:445:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2985, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2981, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "830:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2983, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "845:1:20", - "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": 2982, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "837:7:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2984, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "837:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "830:17:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2980, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "822:7:20", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2986, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "822:26:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2987, - "nodeType": "ExpressionStatement", - "src": "822:26:20" - }, - { - "assignments": [ - 2989 - ], - "declarations": [ - { - "constant": false, - "id": 2989, - "name": "_allowance", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "855:18:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2988, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "855:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2996, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2990, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "876:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 2992, - "indexExpression": { - "argumentTypes": null, - "id": 2991, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "884:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "876:14:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2995, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2993, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "891:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2994, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "891:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "876:26:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "855:47:20" - }, - { - "expression": { - "argumentTypes": null, - "id": 3006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2997, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1056:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 2999, - "indexExpression": { - "argumentTypes": null, - "id": 2998, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1065:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1056:15:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3004, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1094:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3000, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1074:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3002, - "indexExpression": { - "argumentTypes": null, - "id": 3001, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1083:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1074:15:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1074:19:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3005, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1074:27:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1056:45:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3007, - "nodeType": "ExpressionStatement", - "src": "1056:45:20" - }, - { - "expression": { - "argumentTypes": null, - "id": 3017, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3008, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1107:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3010, - "indexExpression": { - "argumentTypes": null, - "id": 3009, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "1116:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1107:13:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3015, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1141:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3011, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2819, - "src": "1123:8:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3013, - "indexExpression": { - "argumentTypes": null, - "id": 3012, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "1132:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1123:13:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3014, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 2749, - "src": "1123:17:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1123:25:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1107:41:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3018, - "nodeType": "ExpressionStatement", - "src": "1107:41:20" - }, - { - "expression": { - "argumentTypes": null, - "id": 3029, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3019, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "1154:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3023, - "indexExpression": { - "argumentTypes": null, - "id": 3020, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1162:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1154:14:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3024, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3021, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1169:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1169:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1154:26:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3027, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1198:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 3025, - "name": "_allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2989, - "src": "1183:10:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1183:14:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1183:22:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1154:51:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3030, - "nodeType": "ExpressionStatement", - "src": "1154:51:20" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3032, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2971, - "src": "1220:5:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3033, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2973, - "src": "1227:3:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3034, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "1232:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3031, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "1211:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1211:28:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3036, - "nodeType": "ExpressionStatement", - "src": "1211:28:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3037, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1252:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2979, - "id": 3038, - "nodeType": "Return", - "src": "1245:11:20" - } - ] - }, - "documentation": "@dev Transfer tokens from one address to another\n@param _from address The address which you want to send tokens from\n@param _to address The address which you want to transfer to\n@param _value uint256 the amount of tokens to be transferred", - "id": 3040, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2976, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2971, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "750:13:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2970, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "750:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2973, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "765:11:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2972, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "765:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2975, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "778:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2974, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "778:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "749:44:20" - }, - "payable": false, - "returnParameters": { - "id": 2979, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2978, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 3040, - "src": "810:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2977, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "810:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "809:6:20" - }, - "scope": 3186, - "src": "728:533:20", - "stateMutability": "nonpayable", - "superFunction": 2908, - "visibility": "public" - }, - { - "body": { - "id": 3067, - "nodeType": "Block", - "src": "1957:110:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3056, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3049, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "1963:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3053, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3050, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1971:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1971:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1963:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3054, - "indexExpression": { - "argumentTypes": null, - "id": 3052, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3042, - "src": "1983:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1963:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3055, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3044, - "src": "1995:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1963:38:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3057, - "nodeType": "ExpressionStatement", - "src": "1963:38:20" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3059, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2016:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3060, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2016:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3061, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3042, - "src": "2028:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3062, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3044, - "src": "2038:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3058, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2925, - "src": "2007:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3063, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2007:38:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3064, - "nodeType": "ExpressionStatement", - "src": "2007:38:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3065, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2058:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3048, - "id": 3066, - "nodeType": "Return", - "src": "2051:11:20" - } - ] - }, - "documentation": "@dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\nand the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\nrace condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\nhttps://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n@param _spender The address which will spend the funds.\n@param _value The amount of tokens to be spent.", - "id": 3068, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3042, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3068, - "src": "1901:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3041, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1901:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3044, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3068, - "src": "1919:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1919:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1900:34:20" - }, - "payable": false, - "returnParameters": { - "id": 3048, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3047, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 3068, - "src": "1951:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3046, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1951:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1950:6:20" - }, - "scope": 3186, - "src": "1884:183:20", - "stateMutability": "nonpayable", - "superFunction": 2917, - "visibility": "public" - }, - { - "body": { - "id": 3083, - "nodeType": "Block", - "src": "2483:43:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3077, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2496:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3079, - "indexExpression": { - "argumentTypes": null, - "id": 3078, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "2504:6:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2496:15:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3081, - "indexExpression": { - "argumentTypes": null, - "id": 3080, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3072, - "src": "2512:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2496:25:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3076, - "id": 3082, - "nodeType": "Return", - "src": "2489:32:20" - } - ] - }, - "documentation": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n@param _owner address The address which owns the funds.\n@param _spender address The address which will spend the funds.\n@return A uint256 specifying the amount of tokens still available for the spender.", - "id": 3084, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3073, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3070, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3084, - "src": "2405:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3069, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2405:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3072, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3084, - "src": "2421:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3071, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2421:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2404:34:20" - }, - "payable": false, - "returnParameters": { - "id": 3076, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3075, - "name": "remaining", - "nodeType": "VariableDeclaration", - "scope": 3084, - "src": "2464:17:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3074, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2464:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2463:19:20" - }, - "scope": 3186, - "src": "2386:140:20", - "stateMutability": "view", - "superFunction": 2897, - "visibility": "public" - }, - { - "body": { - "id": 3124, - "nodeType": "Block", - "src": "2856:173:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3108, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3093, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2862:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3097, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3094, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2870:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3095, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2870:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2862:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3098, - "indexExpression": { - "argumentTypes": null, - "id": 3096, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2882:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2862:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3106, - "name": "_addedValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3088, - "src": "2928:11:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3099, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2894:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3102, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3100, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2902:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3101, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2902:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2894:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3104, - "indexExpression": { - "argumentTypes": null, - "id": 3103, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2914:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2894:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 2749, - "src": "2894:33:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3107, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2894:46:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2862:78:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3109, - "nodeType": "ExpressionStatement", - "src": "2862:78:20" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3111, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2955:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2955:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3113, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2967:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3114, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "2977:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3117, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3115, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2985:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2985:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2977:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3119, - "indexExpression": { - "argumentTypes": null, - "id": 3118, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3086, - "src": "2997:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2977:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3110, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2925, - "src": "2946:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3120, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2946:61:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3121, - "nodeType": "ExpressionStatement", - "src": "2946:61:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3122, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3020:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3092, - "id": 3123, - "nodeType": "Return", - "src": "3013:11:20" - } - ] - }, - "documentation": "approve should be called when allowed[_spender] == 0. To increment\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol", - "id": 3125, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "increaseApproval", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3089, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3086, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3125, - "src": "2793:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3085, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2793:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3088, - "name": "_addedValue", - "nodeType": "VariableDeclaration", - "scope": 3125, - "src": "2811:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3087, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2811:4:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2792:36:20" - }, - "payable": false, - "returnParameters": { - "id": 3092, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3091, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3125, - "src": "2842:12:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3090, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2842:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2841:14:20" - }, - "scope": 3186, - "src": "2766:263:20", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 3184, - "nodeType": "Block", - "src": "3128:309:20", - "statements": [ - { - "assignments": [ - 3135 - ], - "declarations": [ - { - "constant": false, - "id": 3135, - "name": "oldValue", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3134:13:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3134, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3134:4:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3142, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3136, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3150:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3139, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3137, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3158:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3158:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3150:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3141, - "indexExpression": { - "argumentTypes": null, - "id": 3140, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3170:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3150:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3134:45:20" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3143, - "name": "_subtractedValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3129, - "src": "3189:16:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "id": 3144, - "name": "oldValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "3208:8:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3189:27:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 3168, - "nodeType": "Block", - "src": "3272:77:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3156, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3280:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3160, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3157, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3288:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3288:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3280:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3161, - "indexExpression": { - "argumentTypes": null, - "id": 3159, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3300:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3280:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3164, - "name": "_subtractedValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3129, - "src": "3325:16:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 3162, - "name": "oldValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "3312:8:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "3312:12:20", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 3165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3312:30:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3280:62:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3167, - "nodeType": "ExpressionStatement", - "src": "3280:62:20" - } - ] - }, - "id": 3169, - "nodeType": "IfStatement", - "src": "3185:164:20", - "trueBody": { - "id": 3155, - "nodeType": "Block", - "src": "3218:48:20", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3146, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3226:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3150, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3147, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3234:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3234:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3226:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3151, - "indexExpression": { - "argumentTypes": null, - "id": 3149, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3246:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3226:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "30", - "id": 3152, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3258:1:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3226:33:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3154, - "nodeType": "ExpressionStatement", - "src": "3226:33:20" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3171, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3363:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3172, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3363:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3173, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3375:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3174, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2969, - "src": "3385:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3177, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3175, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3393:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3393:10:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3385:19:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3179, - "indexExpression": { - "argumentTypes": null, - "id": 3178, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3127, - "src": "3405:8:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3385:29:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3170, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2925, - "src": "3354:8:20", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3354:61:20", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3181, - "nodeType": "ExpressionStatement", - "src": "3354:61:20" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3182, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3428:4:20", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3133, - "id": 3183, - "nodeType": "Return", - "src": "3421:11:20" - } - ] - }, - "documentation": null, - "id": 3185, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "decreaseApproval", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3130, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3127, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3060:16:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3060:7:20", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3129, - "name": "_subtractedValue", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3078:21:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3128, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3078:4:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3059:41:20" - }, - "payable": false, - "returnParameters": { - "id": 3133, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3132, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3185, - "src": "3114:12:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3131, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3114:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3113:14:20" - }, - "scope": 3186, - "src": "3033:404:20", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 3187, - "src": "345:3095:20" - } - ], - "src": "0:3441:20" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.691Z" -} \ No newline at end of file +{"contractName":"StandardToken","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"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":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50610f1f806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049d565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610789565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a63565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c39565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e35565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156104dc57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506105ad83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061064283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106988382610ebc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561089a576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092e565b6108ad8382610ebc90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa057600080fd5b610af282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8782600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610cca82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610eca57fe5b818303905092915050565b6000808284019050838110151515610ee957fe5b80915050929150505600a165627a7a72305820c54bdffae225221a3e5d945dd33e8dbd7031c29924d49fb58969d68b7b48f1ae0029"} \ No newline at end of file diff --git a/build/contracts/Store.json b/build/contracts/Store.json index d7928cc..9744fd5 100644 --- a/build/contracts/Store.json +++ b/build/contracts/Store.json @@ -1,4544 +1 @@ -{ - "contractName": "Store", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "sales", - "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": [ - { - "name": "_registry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "payable": false, - "stateMutability": "nonpayable", - "type": "fallback" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_videoId", - "type": "string" - }, - { - "indexed": false, - "name": "_buyer", - "type": "address" - }, - { - "indexed": false, - "name": "_price", - "type": "uint256" - } - ], - "name": "LogBuyVideo", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "address" - } - ], - "name": "LogAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "int256" - } - ], - "name": "LogInt", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "string" - } - ], - "name": "LogString", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "uint256" - } - ], - "name": "LogUint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "bytes" - } - ], - "name": "LogBytes", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "bytes32" - } - ], - "name": "LogBytes32", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_msg", - "type": "bool" - } - ], - "name": "LogBool", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "videoId", - "type": "string" - }, - { - "name": "ipfsData", - "type": "string" - } - ], - "name": "buyVideo", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b506040516020806110d783398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611013806100c46000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cb6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610cdc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d27565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b5050929190602001805190602001909291905050509750975097509750975097506106fd670de0b6b3a76400006106ef6106e0610e7c565b8a610f8090919063ffffffff16565b610fb390919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107d657600080fd5b505af11580156107ea573d6000803e3d6000fd5b505050506040513d602081101561080057600080fd5b8101908080519060200190929190505050506108258288610fce90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156108fe57600080fd5b505af1158015610912573d6000803e3d6000fd5b505050506040513d602081101561092857600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156109fc57600080fd5b505af1158015610a10573d6000803e3d6000fd5b505050506040513d6020811015610a2657600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610afd578082015181840152602081019050610ae2565b50505050905090810190601f168015610b2a5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b63578082015181840152602081019050610b48565b50505050905090810190601f168015610b905780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bb357600080fd5b505af1158015610bc7573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c67578082015181840152602081019050610c4c565b50505050905090810190601f168015610c945780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dbe57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4057600080fd5b505af1158015610f54573d6000803e3d6000fd5b505050506040513d6020811015610f6a57600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fa15750828482811515610f9e57fe5b04145b1515610fa957fe5b8091505092915050565b6000808284811515610fc157fe5b0490508091505092915050565b6000828211151515610fdc57fe5b8183039050929150505600a165627a7a72305820a96027ffcf976f15fbeb7646ea7e2060028e927ad53a672b513eae6b04f95ec20029", - "deployedBytecode": "0x60806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cb6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610cdc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d27565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b5050929190602001805190602001909291905050509750975097509750975097506106fd670de0b6b3a76400006106ef6106e0610e7c565b8a610f8090919063ffffffff16565b610fb390919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107d657600080fd5b505af11580156107ea573d6000803e3d6000fd5b505050506040513d602081101561080057600080fd5b8101908080519060200190929190505050506108258288610fce90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156108fe57600080fd5b505af1158015610912573d6000803e3d6000fd5b505050506040513d602081101561092857600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156109fc57600080fd5b505af1158015610a10573d6000803e3d6000fd5b505050506040513d6020811015610a2657600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610afd578082015181840152602081019050610ae2565b50505050905090810190601f168015610b2a5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b63578082015181840152602081019050610b48565b50505050905090810190601f168015610b905780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bb357600080fd5b505af1158015610bc7573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c67578082015181840152602081019050610c4c565b50505050905090810190601f168015610c945780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dbe57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4057600080fd5b505af1158015610f54573d6000803e3d6000fd5b505050506040513d6020811015610f6a57600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fa15750828482811515610f9e57fe5b04145b1515610fa957fe5b8091505092915050565b6000808284811515610fc157fe5b0490508091505092915050565b6000828211151515610fdc57fe5b8183039050929150505600a165627a7a72305820a96027ffcf976f15fbeb7646ea7e2060028e927ad53a672b513eae6b04f95ec20029", - "sourceMap": "360:1633:9:-;;;558:76;8:9:-1;5:2;;;30:1;27;20:12;5:2;558:76:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;618:9:9;607:8;;:20;;;;;;;;;;;;;;;;;;558:76;360:1633;;;;;;", - "deployedSourceMap": "360:1633:9:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;360:1633:9;738:8;;;1014:781;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1014:781:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;457:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;457:24:9;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;433:18:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;433:18:9;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1014:781:9;1080:4;1137:13;1274:5;1281;1288:2;1292:3;1297:2;1301;1368:19;1521:17;1160:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1160:30:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1160:30:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1160:30:9;;;;;;;;;;;;;;;;1137:54;;1314:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1314:30:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1314:30:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1314:30:9;;;;;;;;;;;;;;;;1307:42;;;1350:7;1307:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1307:51:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1307:51:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1307:51:9;;;;;;39:16:-1;36:1;17:17;2:54;1307:51:9;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;13:3;8;5:12;2:2;;;30:1;27;20:12;2:2;1307:51:9;;;;;;;;;;;;;;;;;;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;338:9;333:1;319:12;315:20;297:16;293:43;290:58;268:11;254:12;251:29;239:118;236:2;;;370:1;367;360:12;236:2;0:382;;1307:51:9;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;338:9;333:1;319:12;315:20;297:16;293:43;290:58;268:11;254:12;251:29;239:118;236:2;;;370:1;367;360:12;236:2;0:382;;1307:51:9;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;338:9;333:1;319:12;315:20;297:16;293:43;290:58;268:11;254:12;251:29;239:118;236:2;;;370:1;367;360:12;236:2;0:382;;1307:51:9;;;;;;;;;;;;;;;;;1269:89;;;;;;;;;;;;1390:50;1431:8;1390:36;1400:25;:23;:25::i;:::-;1390:5;:9;;:36;;;;:::i;:::-;:40;;:50;;;;:::i;:::-;1368:72;;1450:6;:19;;;1470:10;1490:6;1499:11;1450:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1450:61:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1450:61:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1450:61:9;;;;;;;;;;;;;;;;;1541:22;1551:11;1541:5;:9;;:22;;;;:::i;:::-;1521:42;;1573:6;:19;;;1593:10;1605:5;1612:9;1573:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1573:49:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1573:49:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1573:49:9;;;;;;;;;;;;;;;;;1638:8;;;;;;;;;;;:20;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1638:29:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1638:29:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1638:29:9;;;;;;;;;;;;;;;;1632:43;;;1676:10;1688:7;1697:5;1704:8;1632:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1632:81:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1632:81:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1632:81:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1632:81:9;;;;1728:39;1740:7;1749:10;1761:5;1728:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1728:39:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1784:4;1777:11;;1014:781;;;;;;;;;;;;;:::o;457:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;433:18:9:-;;;;;;;;;;;;;:::o;827:169:16:-;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;1801:190:9:-;1862:7;1936:8;;;;;;;;;;;:16;;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1936:48:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1936:48:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1936:48:9;;;;;;;;;;;;;;;;1929:55;;1801:190;:::o;138:147:15:-;200:7;215:9;231:1;227;:5;215:17;;250:1;245;:6;:20;;;;264:1;259;255;:5;;;;;;;;:10;245:20;238:28;;;;;;279:1;272:8;;138:147;;;;;:::o;289:269::-;351:7;440:9;456:1;452;:5;;;;;;;;440:17;;552:1;545:8;;289:269;;;;;:::o;562:114::-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Avatar.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\nimport \"./Sales.sol\";\nimport \"./Users.sol\";\nimport \"./Videos.sol\";\nimport \"../debug/Debug.sol\";\n\n\n/**\n * @title Store\n * @dev A Contract that wraps the native transfer function and logs an event.\n */\n\ncontract Store is Ownable, Debug {\n\n using SafeMath for uint256;\n\n Sales public sales;\n Registry public registry;\n\n event LogBuyVideo(string _videoId, address _buyer, uint _price);\n\n constructor(Registry _registry) public {\n registry = _registry;\n }\n\n // If someone accidentally sends ether to this contract, revert;\n function () public {\n revert();\n }\n\n /**\n * @dev buyVideo msg.sender buys a video\n * @param videoId the id of the video\n * For the transaction to succeed, the buyer must have approved for the Avatar to transfer\n * the sum to the owner and the redistribution pool.\n */\n function buyVideo(string videoId, string ipfsData) public returns(bool) {\n // get the info about the video\n Avatar avatar = Avatar(registry.getContract(\"Avatar\"));\n /*Videos videos = Videos(registry.getContract(\"Videos\"));*/\n var (owner, price, _3, _4_, _5, _6) = Videos(registry.getContract(\"Videos\")).get(videoId);\n uint256 paratiiPart = price.mul(redistributionPoolShare()).div(10 ** 18);\n avatar.transferFrom(msg.sender, address(avatar), paratiiPart);\n uint256 ownerPart = price.sub(paratiiPart);\n avatar.transferFrom(msg.sender, owner, ownerPart);\n Sales(registry.getContract(\"Sales\")).create(msg.sender, videoId, price, ipfsData);\n emit LogBuyVideo(videoId, msg.sender, price);\n return true;\n }\n\n function redistributionPoolShare() internal constant returns(uint256) {\n // the \"percentage\" in precision 10**18\n return registry.getUint(\"VideoRedistributionPoolShare\");\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Store.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Store.sol", - "exportedSymbols": { - "Store": [ - 1481 - ] - }, - "id": 1482, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1327, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:9" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1328, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2751, - "src": "26:55:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", - "file": "./Avatar.sol", - "id": 1329, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 288, - "src": "82:22:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 1330, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 872, - "src": "105:28:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1331, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1097, - "src": "134:24:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", - "file": "./Sales.sol", - "id": 1332, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1278, - "src": "159:21:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", - "file": "./Users.sol", - "id": 1333, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1998, - "src": "181:21:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", - "file": "./Videos.sol", - "id": 1334, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2271, - "src": "203:22:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", - "file": "../debug/Debug.sol", - "id": 1335, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 88, - "src": "226:28:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1336, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "378:7:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1337, - "nodeType": "InheritanceSpecifier", - "src": "378:7:9" - }, - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1338, - "name": "Debug", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 87, - "src": "387:5:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Debug_$87", - "typeString": "contract Debug" - } - }, - "id": 1339, - "nodeType": "InheritanceSpecifier", - "src": "387:5:9" - } - ], - "contractDependencies": [ - 87, - 2806 - ], - "contractKind": "contract", - "documentation": "@title Store\n@dev A Contract that wraps the native transfer function and logs an event.", - "fullyImplemented": true, - "id": 1481, - "linearizedBaseContracts": [ - 1481, - 87, - 2806 - ], - "name": "Store", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 1342, - "libraryName": { - "contractScope": null, - "id": 1340, - "name": "SafeMath", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, - "src": "406:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", - "typeString": "library SafeMath" - } - }, - "nodeType": "UsingForDirective", - "src": "400:27:9", - "typeName": { - "id": 1341, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "419:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 1344, - "name": "sales", - "nodeType": "VariableDeclaration", - "scope": 1481, - "src": "433:18:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", - "typeString": "contract Sales" - }, - "typeName": { - "contractScope": null, - "id": 1343, - "name": "Sales", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1277, - "src": "433:5:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", - "typeString": "contract Sales" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1346, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1481, - "src": "457:24:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1345, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "457:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 1354, - "name": "LogBuyVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 1353, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1348, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "506:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1347, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "506:6:9", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1350, - "indexed": false, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "523:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1349, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "523:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1352, - "indexed": false, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "539:11:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1351, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "539:4:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "505:46:9" - }, - "src": "488:64:9" - }, - { - "body": { - "id": 1363, - "nodeType": "Block", - "src": "597:37:9", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1359, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "607:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1360, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1356, - "src": "618:9:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "607:20:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1362, - "nodeType": "ExpressionStatement", - "src": "607:20:9" - } - ] - }, - "documentation": null, - "id": 1364, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1357, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1356, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1364, - "src": "570:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1355, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "570:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "569:20:9" - }, - "payable": false, - "returnParameters": { - "id": 1358, - "nodeType": "ParameterList", - "parameters": [], - "src": "597:0:9" - }, - "scope": 1481, - "src": "558:76:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1370, - "nodeType": "Block", - "src": "728:25:9", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1367, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3206, - 3207 - ], - "referencedDeclaration": 3206, - "src": "738:6:9", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1368, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "738:8:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1369, - "nodeType": "ExpressionStatement", - "src": "738:8:9" - } - ] - }, - "documentation": null, - "id": 1371, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1365, - "nodeType": "ParameterList", - "parameters": [], - "src": "718:2:9" - }, - "payable": false, - "returnParameters": { - "id": 1366, - "nodeType": "ParameterList", - "parameters": [], - "src": "728:0:9" - }, - "scope": 1481, - "src": "709:44:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1468, - "nodeType": "Block", - "src": "1087:708:9", - "statements": [ - { - "assignments": [ - 1381 - ], - "declarations": [ - { - "constant": false, - "id": 1381, - "name": "avatar", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1137:13:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - }, - "typeName": { - "contractScope": null, - "id": 1380, - "name": "Avatar", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 287, - "src": "1137:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1388, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "417661746172", - "id": 1385, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1181:8:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - }, - "value": "Avatar" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1383, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1160:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1384, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1160:20:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1160:30:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1382, - "name": "Avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 287, - "src": "1153:6:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Avatar_$287_$", - "typeString": "type(contract Avatar)" - } - }, - "id": 1387, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1153:38:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1137:54:9" - }, - { - "assignments": [ - 1389, - 1390, - 1391, - 1392, - 1393, - 1394 - ], - "declarations": [ - { - "constant": false, - "id": 1389, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1274:5:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1390, - "name": "price", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1281:5:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1391, - "name": "_3", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1288:2:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1392, - "name": "_4_", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1292:3:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1393, - "name": "_5", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1297:2:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1394, - "name": "_6", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1301:2:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": null, - "value": null, - "visibility": "internal" - } - ], - "id": 1404, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1402, - "name": "videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1350:7:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "566964656f73", - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1335:8:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", - "typeString": "literal_string \"Videos\"" - }, - "value": "Videos" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", - "typeString": "literal_string \"Videos\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1396, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1314:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1314:20:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1314:30:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1395, - "name": "Videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "1307:6:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Videos_$2270_$", - "typeString": "type(contract Videos)" - } - }, - "id": 1400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:38:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Videos_$2270", - "typeString": "contract Videos" - } - }, - "id": 1401, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "get", - "nodeType": "MemberAccess", - "referencedDeclaration": 2269, - "src": "1307:42:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", - "typeString": "function (string memory) view external returns (address,uint256,string memory,string memory,string memory,address)" - } - }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:51:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", - "typeString": "tuple(address,uint256,string memory,string memory,string memory,address)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1269:89:9" - }, - { - "assignments": [ - 1406 - ], - "declarations": [ - { - "constant": false, - "id": 1406, - "name": "paratiiPart", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1368:19:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1405, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1368:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1417, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_rational_1000000000000000000_by_1", - "typeString": "int_const 1000000000000000000" - }, - "id": 1415, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "3130", - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1431:2:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3138", - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1437:2:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_18_by_1", - "typeString": "int_const 18" - }, - "value": "18" - }, - "src": "1431:8:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_1000000000000000000_by_1", - "typeString": "int_const 1000000000000000000" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1000000000000000000_by_1", - "typeString": "int_const 1000000000000000000" - } - ], - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1409, - "name": "redistributionPoolShare", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "1400:23:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 1410, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1400:25:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1407, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1390:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "mul", - "nodeType": "MemberAccess", - "referencedDeclaration": 2687, - "src": "1390:9:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 1411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1390:36:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1412, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "div", - "nodeType": "MemberAccess", - "referencedDeclaration": 2705, - "src": "1390:40:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 1416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1390:50:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1368:72:9" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1421, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1470:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1470:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1424, - "name": "avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1490:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - ], - "id": 1423, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1482:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 1425, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1482:15:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1426, - "name": "paratiiPart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1499:11:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1418, - "name": "avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1450:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1450:19:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1427, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1450:61:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1428, - "nodeType": "ExpressionStatement", - "src": "1450:61:9" - }, - { - "assignments": [ - 1430 - ], - "declarations": [ - { - "constant": false, - "id": 1430, - "name": "ownerPart", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1521:17:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1429, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1521:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1435, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1433, - "name": "paratiiPart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1551:11:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1431, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1541:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1541:9:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 1434, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1541:22:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1521:42:9" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1439, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1593:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1593:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1441, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1389, - "src": "1605:5:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1442, - "name": "ownerPart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1430, - "src": "1612:9:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1436, - "name": "avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1573:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "id": 1438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1573:19:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1573:49:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1444, - "nodeType": "ExpressionStatement", - "src": "1573:49:9" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1452, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1676:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1676:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1454, - "name": "videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1688:7:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1455, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1697:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1456, - "name": "ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1375, - "src": "1704:8:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "53616c6573", - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1659:7:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", - "typeString": "literal_string \"Sales\"" - }, - "value": "Sales" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", - "typeString": "literal_string \"Sales\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1446, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1638:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1447, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1638:20:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1449, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1638:29:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1445, - "name": "Sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1277, - "src": "1632:5:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Sales_$1277_$", - "typeString": "type(contract Sales)" - } - }, - "id": 1450, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1632:36:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", - "typeString": "contract Sales" - } - }, - "id": 1451, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "create", - "nodeType": "MemberAccess", - "referencedDeclaration": 1205, - "src": "1632:43:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,uint256,string memory) external" - } - }, - "id": 1457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1632:81:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1458, - "nodeType": "ExpressionStatement", - "src": "1632:81:9" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1460, - "name": "videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1740:7:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1461, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1749:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1462, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1749:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1463, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1761:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1459, - "name": "LogBuyVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "1728:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (string memory,address,uint256)" - } - }, - "id": 1464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1728:39:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1465, - "nodeType": "EmitStatement", - "src": "1723:44:9" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1466, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1784:4:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1379, - "id": 1467, - "nodeType": "Return", - "src": "1777:11:9" - } - ] - }, - "documentation": "@dev buyVideo msg.sender buys a video\n@param videoId the id of the video\nFor the transaction to succeed, the buyer must have approved for the Avatar to transfer\nthe sum to the owner and the redistribution pool.", - "id": 1469, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "buyVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1376, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1373, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1032:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1372, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1032:6:9", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1375, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1048:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1374, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1048:6:9", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1031:33:9" - }, - "payable": false, - "returnParameters": { - "id": 1379, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1378, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1080:4:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1377, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1080:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1079:6:9" - }, - "scope": 1481, - "src": "1014:781:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1479, - "nodeType": "Block", - "src": "1871:120:9", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "566964656f5265646973747269627574696f6e506f6f6c5368617265", - "id": 1476, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1953:30:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", - "typeString": "literal_string \"VideoRedistributionPoolShare\"" - }, - "value": "VideoRedistributionPoolShare" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", - "typeString": "literal_string \"VideoRedistributionPoolShare\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1474, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1936:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getUint", - "nodeType": "MemberAccess", - "referencedDeclaration": 1039, - "src": "1936:16:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (string memory) view external returns (uint256)" - } - }, - "id": 1477, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1936:48:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1473, - "id": 1478, - "nodeType": "Return", - "src": "1929:55:9" - } - ] - }, - "documentation": null, - "id": 1480, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "redistributionPoolShare", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1470, - "nodeType": "ParameterList", - "parameters": [], - "src": "1833:2:9" - }, - "payable": false, - "returnParameters": { - "id": 1473, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1472, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1480, - "src": "1862:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1471, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1862:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1861:9:9" - }, - "scope": 1481, - "src": "1801:190:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - } - ], - "scope": 1482, - "src": "360:1633:9" - } - ], - "src": "0:1994:9" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Store.sol", - "exportedSymbols": { - "Store": [ - 1481 - ] - }, - "id": 1482, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1327, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:9" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1328, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2751, - "src": "26:55:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", - "file": "./Avatar.sol", - "id": 1329, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 288, - "src": "82:22:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 1330, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 872, - "src": "105:28:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1331, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1097, - "src": "134:24:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", - "file": "./Sales.sol", - "id": 1332, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1278, - "src": "159:21:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", - "file": "./Users.sol", - "id": 1333, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1998, - "src": "181:21:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", - "file": "./Videos.sol", - "id": 1334, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2271, - "src": "203:22:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", - "file": "../debug/Debug.sol", - "id": 1335, - "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 88, - "src": "226:28:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1336, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "378:7:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1337, - "nodeType": "InheritanceSpecifier", - "src": "378:7:9" - }, - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1338, - "name": "Debug", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 87, - "src": "387:5:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Debug_$87", - "typeString": "contract Debug" - } - }, - "id": 1339, - "nodeType": "InheritanceSpecifier", - "src": "387:5:9" - } - ], - "contractDependencies": [ - 87, - 2806 - ], - "contractKind": "contract", - "documentation": "@title Store\n@dev A Contract that wraps the native transfer function and logs an event.", - "fullyImplemented": true, - "id": 1481, - "linearizedBaseContracts": [ - 1481, - 87, - 2806 - ], - "name": "Store", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 1342, - "libraryName": { - "contractScope": null, - "id": 1340, - "name": "SafeMath", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, - "src": "406:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", - "typeString": "library SafeMath" - } - }, - "nodeType": "UsingForDirective", - "src": "400:27:9", - "typeName": { - "id": 1341, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "419:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 1344, - "name": "sales", - "nodeType": "VariableDeclaration", - "scope": 1481, - "src": "433:18:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", - "typeString": "contract Sales" - }, - "typeName": { - "contractScope": null, - "id": 1343, - "name": "Sales", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1277, - "src": "433:5:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", - "typeString": "contract Sales" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1346, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1481, - "src": "457:24:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1345, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "457:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 1354, - "name": "LogBuyVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 1353, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1348, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "506:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1347, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "506:6:9", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1350, - "indexed": false, - "name": "_buyer", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "523:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1349, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "523:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1352, - "indexed": false, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "539:11:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1351, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "539:4:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "505:46:9" - }, - "src": "488:64:9" - }, - { - "body": { - "id": 1363, - "nodeType": "Block", - "src": "597:37:9", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1359, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "607:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1360, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1356, - "src": "618:9:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "607:20:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1362, - "nodeType": "ExpressionStatement", - "src": "607:20:9" - } - ] - }, - "documentation": null, - "id": 1364, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1357, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1356, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1364, - "src": "570:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1355, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "570:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "569:20:9" - }, - "payable": false, - "returnParameters": { - "id": 1358, - "nodeType": "ParameterList", - "parameters": [], - "src": "597:0:9" - }, - "scope": 1481, - "src": "558:76:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1370, - "nodeType": "Block", - "src": "728:25:9", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1367, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3206, - 3207 - ], - "referencedDeclaration": 3206, - "src": "738:6:9", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1368, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "738:8:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1369, - "nodeType": "ExpressionStatement", - "src": "738:8:9" - } - ] - }, - "documentation": null, - "id": 1371, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1365, - "nodeType": "ParameterList", - "parameters": [], - "src": "718:2:9" - }, - "payable": false, - "returnParameters": { - "id": 1366, - "nodeType": "ParameterList", - "parameters": [], - "src": "728:0:9" - }, - "scope": 1481, - "src": "709:44:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1468, - "nodeType": "Block", - "src": "1087:708:9", - "statements": [ - { - "assignments": [ - 1381 - ], - "declarations": [ - { - "constant": false, - "id": 1381, - "name": "avatar", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1137:13:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - }, - "typeName": { - "contractScope": null, - "id": 1380, - "name": "Avatar", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 287, - "src": "1137:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1388, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "417661746172", - "id": 1385, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1181:8:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - }, - "value": "Avatar" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1383, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1160:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1384, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1160:20:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1160:30:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1382, - "name": "Avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 287, - "src": "1153:6:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Avatar_$287_$", - "typeString": "type(contract Avatar)" - } - }, - "id": 1387, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1153:38:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1137:54:9" - }, - { - "assignments": [ - 1389, - 1390, - 1391, - 1392, - 1393, - 1394 - ], - "declarations": [ - { - "constant": false, - "id": 1389, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1274:5:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1390, - "name": "price", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1281:5:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1391, - "name": "_3", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1288:2:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1392, - "name": "_4_", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1292:3:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1393, - "name": "_5", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1297:2:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": null, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1394, - "name": "_6", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1301:2:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": null, - "value": null, - "visibility": "internal" - } - ], - "id": 1404, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1402, - "name": "videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1350:7:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "566964656f73", - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1335:8:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", - "typeString": "literal_string \"Videos\"" - }, - "value": "Videos" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", - "typeString": "literal_string \"Videos\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1396, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1314:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1314:20:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1314:30:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1395, - "name": "Videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "1307:6:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Videos_$2270_$", - "typeString": "type(contract Videos)" - } - }, - "id": 1400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:38:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Videos_$2270", - "typeString": "contract Videos" - } - }, - "id": 1401, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "get", - "nodeType": "MemberAccess", - "referencedDeclaration": 2269, - "src": "1307:42:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", - "typeString": "function (string memory) view external returns (address,uint256,string memory,string memory,string memory,address)" - } - }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:51:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", - "typeString": "tuple(address,uint256,string memory,string memory,string memory,address)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1269:89:9" - }, - { - "assignments": [ - 1406 - ], - "declarations": [ - { - "constant": false, - "id": 1406, - "name": "paratiiPart", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1368:19:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1405, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1368:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1417, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_rational_1000000000000000000_by_1", - "typeString": "int_const 1000000000000000000" - }, - "id": 1415, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "3130", - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1431:2:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3138", - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1437:2:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_18_by_1", - "typeString": "int_const 18" - }, - "value": "18" - }, - "src": "1431:8:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_1000000000000000000_by_1", - "typeString": "int_const 1000000000000000000" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1000000000000000000_by_1", - "typeString": "int_const 1000000000000000000" - } - ], - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1409, - "name": "redistributionPoolShare", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "1400:23:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 1410, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1400:25:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1407, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1390:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "mul", - "nodeType": "MemberAccess", - "referencedDeclaration": 2687, - "src": "1390:9:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 1411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1390:36:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1412, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "div", - "nodeType": "MemberAccess", - "referencedDeclaration": 2705, - "src": "1390:40:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 1416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1390:50:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1368:72:9" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1421, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1470:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1470:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1424, - "name": "avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1490:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - ], - "id": 1423, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1482:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 1425, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1482:15:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1426, - "name": "paratiiPart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1499:11:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1418, - "name": "avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1450:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1450:19:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1427, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1450:61:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1428, - "nodeType": "ExpressionStatement", - "src": "1450:61:9" - }, - { - "assignments": [ - 1430 - ], - "declarations": [ - { - "constant": false, - "id": 1430, - "name": "ownerPart", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1521:17:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1429, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1521:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1435, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1433, - "name": "paratiiPart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1551:11:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1431, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1541:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1541:9:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" - } - }, - "id": 1434, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1541:22:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1521:42:9" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1439, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1593:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1593:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1441, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1389, - "src": "1605:5:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1442, - "name": "ownerPart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1430, - "src": "1612:9:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1436, - "name": "avatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1573:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Avatar_$287", - "typeString": "contract Avatar" - } - }, - "id": 1438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1573:19:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1573:49:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1444, - "nodeType": "ExpressionStatement", - "src": "1573:49:9" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1452, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1676:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1676:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1454, - "name": "videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1688:7:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1455, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1697:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 1456, - "name": "ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1375, - "src": "1704:8:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "53616c6573", - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1659:7:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", - "typeString": "literal_string \"Sales\"" - }, - "value": "Sales" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", - "typeString": "literal_string \"Sales\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1446, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1638:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1447, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1638:20:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 1449, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1638:29:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1445, - "name": "Sales", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1277, - "src": "1632:5:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Sales_$1277_$", - "typeString": "type(contract Sales)" - } - }, - "id": 1450, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1632:36:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", - "typeString": "contract Sales" - } - }, - "id": 1451, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "create", - "nodeType": "MemberAccess", - "referencedDeclaration": 1205, - "src": "1632:43:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,uint256,string memory) external" - } - }, - "id": 1457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1632:81:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1458, - "nodeType": "ExpressionStatement", - "src": "1632:81:9" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1460, - "name": "videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1740:7:9", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1461, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1749:3:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1462, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1749:10:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1463, - "name": "price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1761:5:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1459, - "name": "LogBuyVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "1728:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (string memory,address,uint256)" - } - }, - "id": 1464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1728:39:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1465, - "nodeType": "EmitStatement", - "src": "1723:44:9" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1466, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1784:4:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1379, - "id": 1467, - "nodeType": "Return", - "src": "1777:11:9" - } - ] - }, - "documentation": "@dev buyVideo msg.sender buys a video\n@param videoId the id of the video\nFor the transaction to succeed, the buyer must have approved for the Avatar to transfer\nthe sum to the owner and the redistribution pool.", - "id": 1469, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "buyVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1376, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1373, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1032:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1372, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1032:6:9", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1375, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1048:15:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1374, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1048:6:9", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1031:33:9" - }, - "payable": false, - "returnParameters": { - "id": 1379, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1378, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1080:4:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1377, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1080:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1079:6:9" - }, - "scope": 1481, - "src": "1014:781:9", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1479, - "nodeType": "Block", - "src": "1871:120:9", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "566964656f5265646973747269627574696f6e506f6f6c5368617265", - "id": 1476, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1953:30:9", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", - "typeString": "literal_string \"VideoRedistributionPoolShare\"" - }, - "value": "VideoRedistributionPoolShare" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", - "typeString": "literal_string \"VideoRedistributionPoolShare\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 1474, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1936:8:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getUint", - "nodeType": "MemberAccess", - "referencedDeclaration": 1039, - "src": "1936:16:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (string memory) view external returns (uint256)" - } - }, - "id": 1477, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1936:48:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1473, - "id": 1478, - "nodeType": "Return", - "src": "1929:55:9" - } - ] - }, - "documentation": null, - "id": 1480, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "redistributionPoolShare", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1470, - "nodeType": "ParameterList", - "parameters": [], - "src": "1833:2:9" - }, - "payable": false, - "returnParameters": { - "id": 1473, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1472, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1480, - "src": "1862:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1471, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1862:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1861:9:9" - }, - "scope": 1481, - "src": "1801:190:9", - "stateMutability": "view", - "superFunction": null, - "visibility": "internal" - } - ], - "scope": 1482, - "src": "360:1633:9" - } - ], - "src": "0:1994:9" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.678Z" -} \ No newline at end of file +{"contractName":"Store","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sales","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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_price","type":"uint256"}],"name":"LogBuyVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"address"}],"name":"LogAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"int256"}],"name":"LogInt","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"string"}],"name":"LogString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"uint256"}],"name":"LogUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes"}],"name":"LogBytes","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes32"}],"name":"LogBytes32","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bool"}],"name":"LogBool","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"videoId","type":"string"},{"name":"ipfsData","type":"string"}],"name":"buyVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806110e383398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061101f806100c46000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cc2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610ce8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d33565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b505092919060200180519060200190929190505050809850819950829a50839b50849c50859d50505050505050610709670de0b6b3a76400006106fb6106ec610e88565b8a610f8c90919063ffffffff16565b610fbf90919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107e257600080fd5b505af11580156107f6573d6000803e3d6000fd5b505050506040513d602081101561080c57600080fd5b8101908080519060200190929190505050506108318288610fda90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561090a57600080fd5b505af115801561091e573d6000803e3d6000fd5b505050506040513d602081101561093457600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0857600080fd5b505af1158015610a1c573d6000803e3d6000fd5b505050506040513d6020811015610a3257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610b09578082015181840152602081019050610aee565b50505050905090810190601f168015610b365780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b6f578082015181840152602081019050610b54565b50505050905090810190601f168015610b9c5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bbf57600080fd5b505af1158015610bd3573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c73578082015181840152602081019050610c58565b50505050905090810190601f168015610ca05780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dca57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4c57600080fd5b505af1158015610f60573d6000803e3d6000fd5b505050506040513d6020811015610f7657600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fad5750828482811515610faa57fe5b04145b1515610fb557fe5b8091505092915050565b6000808284811515610fcd57fe5b0490508091505092915050565b6000828211151515610fe857fe5b8183039050929150505600a165627a7a7230582090687df2b2e59250c0354d1b3cb9fc8cd998b1679d1f5efc2e17efe9b48545410029"} \ No newline at end of file diff --git a/build/contracts/TcrPlaceholder.json b/build/contracts/TcrPlaceholder.json index 37c25ce..b49953f 100644 --- a/build/contracts/TcrPlaceholder.json +++ b/build/contracts/TcrPlaceholder.json @@ -1,9940 +1 @@ -{ - "contractName": "TcrPlaceholder", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "minDeposit", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "applyStageLen", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "bytes32" - } - ], - "name": "listings", - "outputs": [ - { - "name": "applicationExpiry", - "type": "uint256" - }, - { - "name": "whitelisted", - "type": "bool" - }, - { - "name": "owner", - "type": "address" - }, - { - "name": "unstakedDeposit", - "type": "uint256" - }, - { - "name": "challengeID", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "token", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "name": "_registry", - "type": "address" - }, - { - "name": "_tokenAddr", - "type": "address" - }, - { - "name": "_minDeposit", - "type": "uint256" - }, - { - "name": "_applyStageLen", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "videoId", - "type": "string" - }, - { - "indexed": false, - "name": "deposit", - "type": "uint256" - } - ], - "name": "_Application", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "videoId", - "type": "string" - } - ], - "name": "_NewVideoWhitelisted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - }, - { - "name": "_amount", - "type": "uint256" - } - ], - "name": "apply", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "amount", - "type": "uint256" - } - ], - "name": "deposit", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "amount", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "exit", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "removeListing", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "updateStatus", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "isWhitelisted", - "outputs": [ - { - "name": "whitelisted", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "appWasMade", - "outputs": [ - { - "name": "exists", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_termDate", - "type": "uint256" - } - ], - "name": "isExpired", - "outputs": [ - { - "name": "expired", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "getMinDeposit", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "canBeWhitelisted", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b506040516080806114c683398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003819055508060048190555050505050611352806101746000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610765565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610825565b005b34801561024f57600080fd5b50610258610828565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082e565b005b3480156102e357600080fd5b506102ec610895565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b506103436108bb565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e6108c1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506108e6565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c6004803603810190808035906020019092919050505061097d565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610980565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610c75565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cd8565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610da3565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610daf565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ece565b005b34801561068457600080fd5b5061068d611023565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040518082805190602001908083835b60208310151561071657805182526020820191506020810190506020830392506106f1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b61076e81610cd8565b1561081d5761077c81611049565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b838110156107de5780820151818401526020810190506107c3565b50505050905090810190601f16801561080b5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1610822565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561088957600080fd5b610892816110ea565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040518082805190602001908083835b60208310151561092257805182526020820191506020810190506020830392506108fd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b60006109bd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506108e6565b1515156109c957600080fd5b610a0484848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610a1057600080fd5b6003548210151515610a2157600080fd5b600160008585604051808383808284378201915050925050506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610bba57600080fd5b505af1158015610bce573d6000803e3d6000fd5b505050506040513d6020811015610be457600080fd5b81019080805190602001909291905050501515610c0057600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040518082805190602001908083835b602083101515610d115780518252602082019150602081019050602083039250610cec565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610d49836106d9565b8015610d785750610d7760016000836000191660001916815260200190815260200160002060000154610da3565b5b8015610d8a5750610d88836108e6565b155b15610d985760019150610d9d565b600091505b50919050565b60004382109050919050565b60006001600084846040518083838082843782019150509250505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e4857600080fd5b610e8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506108e6565b1515610e8e57600080fd5b610ec983838080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506110ea565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f2957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f6557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040518082805190602001908083835b602083101515611081578051825260208201915060208101905060208303925061105c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040518082805190602001908083835b60208310151561112357805182526020820191506020810190506020830392506110fe565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156112b057600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561126957600080fd5b505af115801561127d573d6000803e3d6000fd5b505050506040513d602081101561129357600080fd5b810190808051906020019092919050505015156112af57600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a7230582098c7e8b26fb5196f1663d508f470f6caec5654f2cf3a4321d488ee0b98203cf90029", - "deployedBytecode": "0x6080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610765565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610825565b005b34801561024f57600080fd5b50610258610828565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082e565b005b3480156102e357600080fd5b506102ec610895565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b506103436108bb565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e6108c1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506108e6565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c6004803603810190808035906020019092919050505061097d565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610980565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610c75565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cd8565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610da3565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610daf565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ece565b005b34801561068457600080fd5b5061068d611023565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040518082805190602001908083835b60208310151561071657805182526020820191506020810190506020830392506106f1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b61076e81610cd8565b1561081d5761077c81611049565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b838110156107de5780820151818401526020810190506107c3565b50505050905090810190601f16801561080b5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1610822565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561088957600080fd5b610892816110ea565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040518082805190602001908083835b60208310151561092257805182526020820191506020810190506020830392506108fd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b60006109bd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506108e6565b1515156109c957600080fd5b610a0484848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610a1057600080fd5b6003548210151515610a2157600080fd5b600160008585604051808383808284378201915050925050506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610bba57600080fd5b505af1158015610bce573d6000803e3d6000fd5b505050506040513d6020811015610be457600080fd5b81019080805190602001909291905050501515610c0057600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040518082805190602001908083835b602083101515610d115780518252602082019150602081019050602083039250610cec565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610d49836106d9565b8015610d785750610d7760016000836000191660001916815260200190815260200160002060000154610da3565b5b8015610d8a5750610d88836108e6565b155b15610d985760019150610d9d565b600091505b50919050565b60004382109050919050565b60006001600084846040518083838082843782019150509250505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e4857600080fd5b610e8383838080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506108e6565b1515610e8e57600080fd5b610ec983838080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506110ea565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f2957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610f6557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040518082805190602001908083835b602083101515611081578051825260208201915060208101905060208303925061105c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040518082805190602001908083835b60208310151561112357805182526020820191506020810190506020830392506110fe565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156112b057600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561126957600080fd5b505af115801561127d573d6000803e3d6000fd5b505050506040513d602081101561129357600080fd5b810190808051906020019092919050505015156112af57600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a7230582098c7e8b26fb5196f1663d508f470f6caec5654f2cf3a4321d488ee0b98203cf90029", - "sourceMap": "237:6440:10:-;;;1119:332;8:9:-1;5:2;;;30:1;27;20:12;5:2;1119:332:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;1273:10:10;1265:5;;:18;;;;;;;;;;;;;;;;;;1304:9;1293:8;;:20;;;;;;;;;;;;;;;;;;1344:10;1323:5;;:32;;;;;;;;;;;;;;;;;;1378:11;1365:10;:24;;;;1415:14;1399:13;:30;;;;1119:332;;;;237:6440;;;;;;", - "deployedSourceMap": "237:6440:10:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5421:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5421:86:10;;;;;;;;;;;;;;;;;;;;;;;5083:146;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5083:146:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3854:237;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3854:237:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2748:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2748:48:10;;;;;;;;;;;;;;;;;;;;;;;;;;900:22;;8:9:-1;5:2;;;30:1;27;20:12;5:2;900:22:10;;;;;;;;;;;;;;;;;;;;;;;3525:96;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3525:96:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;959:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;959:24:10;;;;;;;;;;;;;;;;;;;;;;;;;;;928:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;928:25:10;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;4873:144:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4873:144:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2575:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2575:47:10;;;;;;;;;;;;;;;;;;;;;;;;;;1763:639;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1763:639:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;819:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;819:43:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5688:463;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5688:463:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5297:118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5297:118:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2938:461;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2938:461:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;869:25:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;869:25:10;;;;;;;;;;;;;;;;;;;;;;;;;;;5421:86;5467:4;5490:10;;5483:17;;5421:86;:::o;5083:146::-;5141:11;5221:1;5171:8;:29;5190:8;5180:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5180:19:10;;;;;;;;;;;;;;;;5171:29;;;;;;;;;;;;;;;;;:47;;;:51;5164:58;;5083:146;;;:::o;3854:237::-;3914:26;3931:8;3914:16;:26::i;:::-;3910:175;;;3956:30;3977:8;3956:20;:30::i;:::-;4005;4026:8;4005:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4005:30:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3910:175;;;4066:8;;;3910:175;3854:237;:::o;2748:48::-;;:::o;900:22::-;;;;:::o;3525:96::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;3592:22:10;3605:8;3592:12;:22::i;:::-;3525:96;:::o;959:24::-;;;;;;;;;;;;;:::o;928:25::-;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;4873:144:10:-;4934:16;4969:8;:29;4988:8;4978:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4978:19:10;;;;;;;;;;;;;;;;4969:29;;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;4962:48;;4873:144;;;:::o;2575:47::-;;:::o;1763:639::-;1973:23;1837;1851:8;;1837:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:23::i;:::-;1836:24;1828:33;;;;;;;;1880:20;1891:8;;1880:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:10;:20::i;:::-;1879:21;1871:30;;;;;;;;1930:10;;1919:7;:21;;1911:30;;;;;;;;1999:8;:29;2018:8;;2008:19;;;;;;;;;;;;;;;;;;;;;;;;;1999:29;;;;;;;;;;;;;;;;;1973:55;;2054:10;2038:7;:13;;;:26;;;;;;;;;;;;;;;;;;2147:5;;;;;;;;;;;:18;;;2166:7;:13;;;;;;;;;;;;2181:4;2187:7;2147:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2147:48:10;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2147:48:10;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2147:48:10;;;;;;;;;;;;;;;;2139:57;;;;;;;;2292:13;;2277:12;:28;2249:7;:25;;:56;;;;2341:7;2315;:23;;:33;;;;2364:31;2377:8;;2387:7;2364:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:639;;;;:::o;819:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5688:463::-;5752:4;5768:17;5798:8;5788:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5788:19:10;;;;;;;;;;;;;;;;5768:39;;5971:20;5982:8;5971:10;:20::i;:::-;:84;;;;;6007:48;6017:8;:19;6026:9;6017:19;;;;;;;;;;;;;;;;;:37;;;6007:9;:48::i;:::-;5971:84;:124;;;;;6072:23;6086:8;6072:13;:23::i;:::-;6071:24;5971:124;5954:168;;;6115:4;6108:11;;;;5954:168;6139:5;6132:12;;5688:463;;;;;:::o;5297:118::-;5353:12;5396;5384:9;:24;5377:31;;5297:118;;;:::o;2938:461::-;2988:23;3014:8;:29;3033:8;;3023:19;;;;;;;;;;;;;;;;;;;;;;;;;3014:29;;;;;;;;;;;;;;;;;2988:55;;3076:7;:13;;;;;;;;;;;;3062:27;;:10;:27;;;3054:36;;;;;;;;3108:23;3122:8;;3108:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:23::i;:::-;3100:32;;;;;;;;3370:22;3383:8;;3370:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:12;:22::i;:::-;2938:461;;;:::o;827:169:16:-;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;869:25:10:-;;;;;;;;;;;;;:::o;4377:160::-;4442:17;4472:8;4462:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4462:19:10;;;;;;;;;;;;;;;;4442:39;;4526:4;4492:8;:19;4501:9;4492:19;;;;;;;;;;;;;;;;;:31;;;:38;;;;;;;;;;;;;;;;;;4377:160;;:::o;6299:375::-;6356:17;6405:23;6386:8;6376:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;6376:19:10;;;;;;;;;;;;;;;;6356:39;;6431:8;:19;6440:9;6431:19;;;;;;;;;;;;;;;;;6405:45;;6552:1;6526:7;:23;;;:27;6522:108;;;6575:5;;;;;;;;;;;:14;;;6590:7;:13;;;;;;;;;;;;6605:7;:23;;;6575:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6575:54:10;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6575:54:10;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6575:54:10;;;;;;;;;;;;;;;;6567:63;;;;;;;;6522:108;6648:8;:19;6657:9;6648:19;;;;;;;;;;;;;;;;;;6641:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6299:375;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\n\n/// WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n/// THIS IS JUST A PLACEHOLDER..\ncontract TcrPlaceholder is Ownable {\n\n // Events\n // ---------\n\n event _Application(string videoId, uint deposit);\n event _NewVideoWhitelisted(string videoId);\n\n struct Listing {\n uint applicationExpiry; // Expiration date of apply stage\n bool whitelisted; // registration status\n address owner; // Owner of the video.\n uint unstakedDeposit; // Number of tokens in the listing not locked in a challenge\n uint challengeID; // ID of canonical challenge\n }\n\n // Maps of videoId Hashes to listing data.\n mapping(bytes32 => Listing) public listings;\n\n ParatiiToken public token;\n uint public minDeposit;\n uint public applyStageLen;\n Registry public registry;\n\n // ---------------------------------------------------------------------------\n // CONSTRUCTOR\n // ------------------\n\n constructor(\n Registry _registry,\n address _tokenAddr,\n uint _minDeposit,\n uint _applyStageLen\n ) public {\n owner = msg.sender;\n registry = _registry;\n token = ParatiiToken(_tokenAddr);\n minDeposit = _minDeposit;\n applyStageLen = _applyStageLen; // 100 blocks.\n }\n\n // ---------------------------------------------------------------------------\n // Video creator functions\n //------------------------\n\n /**\n * allow video creator to apply for whitelisting for a video.\n * @param _videoId the videoId\n * @param _amount the amount to Stake\n */\n function apply(string _videoId, uint _amount) external {\n require(!isWhitelisted(_videoId));\n require(!appWasMade(_videoId));\n require(_amount >= minDeposit);\n\n // set owner\n Listing storage listing = listings[keccak256(_videoId)];\n listing.owner = msg.sender;\n\n // transfer tokens from user to TcrPlaceholder contract\n require(token.transferFrom(listing.owner, this, _amount));\n\n // sets apply stage and end time.\n listing.applicationExpiry = block.number + applyStageLen;\n listing.unstakedDeposit = _amount;\n\n emit _Application(_videoId, _amount);\n }\n\n /**\n * deposit an amount of tokens. (unstaked)\n * @param amount the amount to deposit\n * @return {EVENT} returns event log of deposit event.\n */\n function deposit(uint amount) external {\n\n }\n\n /**\n * take out an amount of tokens from the unstaked tokens.\n * @param amount the amount to take out\n */\n function withdraw(uint amount) external {\n\n }\n\n /**\n * allow video creator to remove a video from the listing and return tokens.\n * @param _videoId videoId to remove\n */\n function exit(string _videoId) external {\n Listing storage listing = listings[keccak256(_videoId)];\n\n require(msg.sender == listing.owner);\n require(isWhitelisted(_videoId));\n\n // Cannot exit during ongoing challenge\n /* require(!challenges[listing.challengeID].isInitialized() ||\n challenges[listing.challengeID].isResolved()); */\n\n // Remove domain & return tokens\n resetListing(_videoId);\n }\n\n /**\n * remove a video , Only the TCR owner can do this.\n * @param _videoId id of the video to remove.\n */\n function removeListing(string _videoId) public onlyOwner {\n resetListing(_videoId);\n }\n\n /**\n @notice Updates a videos's status from 'application' to 'listing'\n @notice or resolves a challenge if one exists.\n @param _videoId The videoId whose status is being updated\n */\n function updateStatus(string _videoId) public {\n if (canBeWhitelisted(_videoId)) {\n whitelistApplication(_videoId);\n emit _NewVideoWhitelisted(_videoId);\n } else {\n revert();\n }\n }\n\n /**\n @dev Called by updateStatus() if the applicationExpiry date passed without a\n challenge being made\n @dev Called by resolveChallenge() if an application/listing beat a challenge.\n @param _videoId The _videoId of an application/listing to be whitelisted\n */\n function whitelistApplication(string _videoId) private {\n bytes32 videoHash = keccak256(_videoId);\n\n listings[videoHash].whitelisted = true;\n }\n\n //----------------------------------------------------------------------------\n // Token HODLers functions\n //--------------------------\n\n // ---------------------------------------------------------------------------\n // Utilities\n //------------------------\n /// @dev returns true if video is whitelisted\n function isWhitelisted(string _videoId) view public returns (bool whitelisted) {\n return listings[keccak256(_videoId)].whitelisted;\n }\n\n // @dev returns true if apply was called for this video\n function appWasMade(string _videoId) view public returns (bool exists) {\n return listings[keccak256(_videoId)].applicationExpiry > 0;\n }\n\n /// @dev returns true if the provided termDate has passed\n function isExpired(uint _termDate) view public returns (bool expired) {\n return _termDate < block.number;\n }\n\n function getMinDeposit() view public returns (uint) {\n return minDeposit;\n }\n\n /**\n @dev Determines whether the video of an application can be whitelisted.\n @param _videoId The videoId whose status should be examined\n */\n function canBeWhitelisted(string _videoId) view public returns (bool) {\n bytes32 videoHash = keccak256(_videoId);\n\n // Ensures that the application was made,\n // the application period has ended,\n // the video can be whitelisted,\n if (\n appWasMade(_videoId) &&\n isExpired(listings[videoHash].applicationExpiry) &&\n !isWhitelisted(_videoId)\n ) { return true; }\n\n return false;\n }\n\n /**\n @dev deletes a listing from the whitelist and transfers tokens back to owner\n @param _videoId the videoId to be removed\n */\n function resetListing(string _videoId) private {\n bytes32 videoHash = keccak256(_videoId);\n Listing storage listing = listings[videoHash];\n\n // Transfers any remaining balance back to the owner\n if (listing.unstakedDeposit > 0)\n require(token.transfer(listing.owner, listing.unstakedDeposit));\n\n delete listings[videoHash];\n }\n\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/TcrPlaceholder.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/TcrPlaceholder.sol", - "exportedSymbols": { - "TcrPlaceholder": [ - 1854 - ] - }, - "id": 1855, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1483, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:10" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1484, - "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 2807, - "src": "26:59:10", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 1485, - "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 872, - "src": "86:28:10", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1486, - "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 1097, - "src": "115:24:10", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1487, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "264:7:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1488, - "nodeType": "InheritanceSpecifier", - "src": "264:7:10" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": "WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n THIS IS JUST A PLACEHOLDER..", - "fullyImplemented": true, - "id": 1854, - "linearizedBaseContracts": [ - 1854, - 2806 - ], - "name": "TcrPlaceholder", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": null, - "id": 1494, - "name": "_Application", - "nodeType": "EventDefinition", - "parameters": { - "id": 1493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1490, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 1494, - "src": "330:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1489, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "330:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1492, - "indexed": false, - "name": "deposit", - "nodeType": "VariableDeclaration", - "scope": 1494, - "src": "346:12:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1491, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "346:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "329:30:10" - }, - "src": "311:49:10" - }, - { - "anonymous": false, - "documentation": null, - "id": 1498, - "name": "_NewVideoWhitelisted", - "nodeType": "EventDefinition", - "parameters": { - "id": 1497, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1496, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 1498, - "src": "392:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1495, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "392:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "391:16:10" - }, - "src": "365:43:10" - }, - { - "canonicalName": "TcrPlaceholder.Listing", - "id": 1509, - "members": [ - { - "constant": false, - "id": 1500, - "name": "applicationExpiry", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "439:22:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1499, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "439:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1502, - "name": "whitelisted", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "505:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1501, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "505:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1504, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "560:13:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1503, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "560:7:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1506, - "name": "unstakedDeposit", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "615:20:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1505, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "615:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1508, - "name": "challengeID", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "708:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1507, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "708:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Listing", - "nodeType": "StructDefinition", - "scope": 1854, - "src": "414:352:10", - "visibility": "public" - }, - { - "constant": false, - "id": 1513, - "name": "listings", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "819:43:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" - }, - "typeName": { - "id": 1512, - "keyType": { - "id": 1510, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "827:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "819:27:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" - }, - "valueType": { - "contractScope": null, - "id": 1511, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "838:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1515, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "869:25:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 1514, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "869:12:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1517, - "name": "minDeposit", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "900:22:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1516, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "900:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1519, - "name": "applyStageLen", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "928:25:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1518, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "928:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1521, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "959:24:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1520, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "959:8:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 1555, - "nodeType": "Block", - "src": "1255:196:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1535, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1532, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1265:5:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1533, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1273:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1273:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1265:18:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1536, - "nodeType": "ExpressionStatement", - "src": "1265:18:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1537, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "1293:8:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1538, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "1304:9:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "1293:20:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1540, - "nodeType": "ExpressionStatement", - "src": "1293:20:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1541, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "1323:5:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1543, - "name": "_tokenAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1525, - "src": "1344:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1542, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1331:12:10", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 1544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1331:24:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "src": "1323:32:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 1546, - "nodeType": "ExpressionStatement", - "src": "1323:32:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1549, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1547, - "name": "minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "1365:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1548, - "name": "_minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1527, - "src": "1378:11:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1365:24:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1550, - "nodeType": "ExpressionStatement", - "src": "1365:24:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1551, - "name": "applyStageLen", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "1399:13:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1552, - "name": "_applyStageLen", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1529, - "src": "1415:14:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1399:30:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1554, - "nodeType": "ExpressionStatement", - "src": "1399:30:10" - } - ] - }, - "documentation": null, - "id": 1556, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1530, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1523, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1140:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1522, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "1140:8:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1525, - "name": "_tokenAddr", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1168:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1524, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1168:7:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1527, - "name": "_minDeposit", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1196:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1526, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1196:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1529, - "name": "_applyStageLen", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1222:19:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1528, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1222:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1130:117:10" - }, - "payable": false, - "returnParameters": { - "id": 1531, - "nodeType": "ParameterList", - "parameters": [], - "src": "1255:0:10" - }, - "scope": 1854, - "src": "1119:332:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1628, - "nodeType": "Block", - "src": "1818:584:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1567, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1836:24:10", - "subExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1565, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "1851:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1564, - "name": "isWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "1837:13:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1837:23:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1563, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1828:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1828:33:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1569, - "nodeType": "ExpressionStatement", - "src": "1828:33:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1879:21:10", - "subExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1572, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "1891:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1571, - "name": "appWasMade", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1759, - "src": "1880:10:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1573, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1880:20:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1570, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1871:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1871:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1576, - "nodeType": "ExpressionStatement", - "src": "1871:30:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1578, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "1919:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 1579, - "name": "minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "1930:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1919:21:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1577, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1911:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1911:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1582, - "nodeType": "ExpressionStatement", - "src": "1911:30:10" - }, - { - "assignments": [ - 1584 - ], - "declarations": [ - { - "constant": false, - "id": 1584, - "name": "listing", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "1973:23:10", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - }, - "typeName": { - "contractScope": null, - "id": 1583, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "1973:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1590, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1585, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "1999:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1589, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2018:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1586, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2008:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2008:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1999:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1973:55:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1591, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2038:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1593, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2038:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1594, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2054:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1595, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2054:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2038:26:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1597, - "nodeType": "ExpressionStatement", - "src": "2038:26:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1601, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2166:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1602, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2166:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1603, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3250, - "src": "2181:4:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", - "typeString": "contract TcrPlaceholder" - } - }, - { - "argumentTypes": null, - "id": 1604, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2187:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", - "typeString": "contract TcrPlaceholder" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1599, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "2147:5:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 1600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 3040, - "src": "2147:18:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2147:48:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1598, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "2139:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2139:57:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1607, - "nodeType": "ExpressionStatement", - "src": "2139:57:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1608, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2249:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1610, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "applicationExpiry", - "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "2249:25:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1611, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "2277:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2277:12:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "argumentTypes": null, - "id": 1613, - "name": "applyStageLen", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "2292:13:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2277:28:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2249:56:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1616, - "nodeType": "ExpressionStatement", - "src": "2249:56:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1621, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1617, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2315:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1619, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "unstakedDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "2315:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1620, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2341:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2315:33:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1622, - "nodeType": "ExpressionStatement", - "src": "2315:33:10" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1624, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2377:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "argumentTypes": null, - "id": 1625, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2387:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1623, - "name": "_Application", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1494, - "src": "2364:12:10", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2364:31:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1627, - "nodeType": "EmitStatement", - "src": "2359:36:10" - } - ] - }, - "documentation": "allow video creator to apply for whitelisting for a video.\n@param _videoId the videoId\n@param _amount the amount to Stake", - "id": 1629, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "apply", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1561, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1558, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "1778:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1557, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1778:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1560, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "1795:12:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1559, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1795:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1777:31:10" - }, - "payable": false, - "returnParameters": { - "id": 1562, - "nodeType": "ParameterList", - "parameters": [], - "src": "1818:0:10" - }, - "scope": 1854, - "src": "1763:639:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1634, - "nodeType": "Block", - "src": "2614:8:10", - "statements": [] - }, - "documentation": "deposit an amount of tokens. (unstaked)\n@param amount the amount to deposit\n@return {EVENT} returns event log of deposit event.", - "id": 1635, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "deposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1632, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1631, - "name": "amount", - "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "2592:11:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1630, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2592:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2591:13:10" - }, - "payable": false, - "returnParameters": { - "id": 1633, - "nodeType": "ParameterList", - "parameters": [], - "src": "2614:0:10" - }, - "scope": 1854, - "src": "2575:47:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1640, - "nodeType": "Block", - "src": "2788:8:10", - "statements": [] - }, - "documentation": "take out an amount of tokens from the unstaked tokens.\n@param amount the amount to take out", - "id": 1641, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "withdraw", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1638, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1637, - "name": "amount", - "nodeType": "VariableDeclaration", - "scope": 1641, - "src": "2766:11:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1636, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2766:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2765:13:10" - }, - "payable": false, - "returnParameters": { - "id": 1639, - "nodeType": "ParameterList", - "parameters": [], - "src": "2788:0:10" - }, - "scope": 1854, - "src": "2748:48:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1672, - "nodeType": "Block", - "src": "2978:421:10", - "statements": [ - { - "assignments": [ - 1647 - ], - "declarations": [ - { - "constant": false, - "id": 1647, - "name": "listing", - "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2988:23:10", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - }, - "typeName": { - "contractScope": null, - "id": 1646, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "2988:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1653, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1648, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "3014:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1652, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1650, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3033:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1649, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3023:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3023:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3014:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2988:55:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1655, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3062:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1656, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3062:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1657, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1647, - "src": "3076:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1658, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "3076:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3062:27:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1654, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "3054:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3054:36:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1661, - "nodeType": "ExpressionStatement", - "src": "3054:36:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1664, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3122:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1663, - "name": "isWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "3108:13:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3108:23:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1662, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "3100:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1666, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3100:32:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1667, - "nodeType": "ExpressionStatement", - "src": "3100:32:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1669, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3383:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1668, - "name": "resetListing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3370:12:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3370:22:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1671, - "nodeType": "ExpressionStatement", - "src": "3370:22:10" - } - ] - }, - "documentation": "allow video creator to remove a video from the listing and return tokens.\n@param _videoId videoId to remove", - "id": 1673, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "exit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1644, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1643, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2952:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1642, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2952:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2951:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1645, - "nodeType": "ParameterList", - "parameters": [], - "src": "2978:0:10" - }, - "scope": 1854, - "src": "2938:461:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1684, - "nodeType": "Block", - "src": "3582:39:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1681, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1675, - "src": "3605:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1680, - "name": "resetListing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3592:12:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3592:22:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1683, - "nodeType": "ExpressionStatement", - "src": "3592:22:10" - } - ] - }, - "documentation": "remove a video , Only the TCR owner can do this.\n@param _videoId id of the video to remove.", - "id": 1685, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1678, - "modifierName": { - "argumentTypes": null, - "id": 1677, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "3572:9:10", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "3572:9:10" - } - ], - "name": "removeListing", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1676, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1675, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1685, - "src": "3548:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1674, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3548:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3547:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1679, - "nodeType": "ParameterList", - "parameters": [], - "src": "3582:0:10" - }, - "scope": 1854, - "src": "3525:96:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1707, - "nodeType": "Block", - "src": "3900:191:10", - "statements": [ - { - "condition": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1691, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3931:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1690, - "name": "canBeWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1815, - "src": "3914:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3914:26:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1705, - "nodeType": "Block", - "src": "4052:33:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1702, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3206, - 3207 - ], - "referencedDeclaration": 3206, - "src": "4066:6:10", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4066:8:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1704, - "nodeType": "ExpressionStatement", - "src": "4066:8:10" - } - ] - }, - "id": 1706, - "nodeType": "IfStatement", - "src": "3910:175:10", - "trueBody": { - "id": 1701, - "nodeType": "Block", - "src": "3942:104:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1694, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3977:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1693, - "name": "whitelistApplication", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1727, - "src": "3956:20:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3956:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1696, - "nodeType": "ExpressionStatement", - "src": "3956:30:10" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1698, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "4026:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1697, - "name": "_NewVideoWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1498, - "src": "4005:20:10", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1699, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4005:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1700, - "nodeType": "EmitStatement", - "src": "4000:35:10" - } - ] - } - } - ] - }, - "documentation": "@notice Updates a videos's status from 'application' to 'listing'\n@notice or resolves a challenge if one exists.\n@param _videoId The videoId whose status is being updated", - "id": 1708, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "updateStatus", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1688, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1687, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1708, - "src": "3876:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1686, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3876:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3875:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1689, - "nodeType": "ParameterList", - "parameters": [], - "src": "3900:0:10" - }, - "scope": 1854, - "src": "3854:237:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1726, - "nodeType": "Block", - "src": "4432:105:10", - "statements": [ - { - "assignments": [ - 1714 - ], - "declarations": [ - { - "constant": false, - "id": 1714, - "name": "videoHash", - "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4442:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1713, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4442:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1718, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1716, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1710, - "src": "4472:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1715, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4462:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4462:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4442:39:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1719, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4492:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1721, - "indexExpression": { - "argumentTypes": null, - "id": 1720, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1714, - "src": "4501:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4492:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1722, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "whitelisted", - "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4492:31:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1723, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4526:4:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "4492:38:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1725, - "nodeType": "ExpressionStatement", - "src": "4492:38:10" - } - ] - }, - "documentation": "@dev Called by updateStatus() if the applicationExpiry date passed without a\nchallenge being made\n@dev Called by resolveChallenge() if an application/listing beat a challenge.\n@param _videoId The _videoId of an application/listing to be whitelisted", - "id": 1727, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "whitelistApplication", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1711, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1710, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4407:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1709, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4407:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4406:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1712, - "nodeType": "ParameterList", - "parameters": [], - "src": "4432:0:10" - }, - "scope": 1854, - "src": "4377:160:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "private" - }, - { - "body": { - "id": 1741, - "nodeType": "Block", - "src": "4952:65:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1734, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4969:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1738, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1736, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1729, - "src": "4988:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1735, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4978:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4978:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4969:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1739, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "whitelisted", - "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4969:41:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1733, - "id": 1740, - "nodeType": "Return", - "src": "4962:48:10" - } - ] - }, - "documentation": "@dev returns true if video is whitelisted", - "id": 1742, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isWhitelisted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1730, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1729, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4896:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1728, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4896:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4895:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1733, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1732, - "name": "whitelisted", - "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4934:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1731, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4934:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4933:18:10" - }, - "scope": 1854, - "src": "4873:144:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1758, - "nodeType": "Block", - "src": "5154:75:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1749, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "5171:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1753, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1751, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "5190:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1750, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5180:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5180:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5171:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1754, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "applicationExpiry", - "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "5171:47:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 1755, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5221:1:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5171:51:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1748, - "id": 1757, - "nodeType": "Return", - "src": "5164:58:10" - } - ] - }, - "documentation": null, - "id": 1759, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "appWasMade", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1745, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1744, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5103:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1743, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5103:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5102:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1748, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1747, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5141:11:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1746, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5141:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5140:13:10" - }, - "scope": 1854, - "src": "5083:146:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1771, - "nodeType": "Block", - "src": "5367:48:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1766, - "name": "_termDate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1761, - "src": "5384:9:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1767, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "5396:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 1768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "5396:12:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5384:24:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1765, - "id": 1770, - "nodeType": "Return", - "src": "5377:31:10" - } - ] - }, - "documentation": "@dev returns true if the provided termDate has passed", - "id": 1772, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isExpired", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1761, - "name": "_termDate", - "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5316:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1760, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5316:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5315:16:10" - }, - "payable": false, - "returnParameters": { - "id": 1765, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1764, - "name": "expired", - "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5353:12:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1763, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5353:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5352:14:10" - }, - "scope": 1854, - "src": "5297:118:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1779, - "nodeType": "Block", - "src": "5473:34:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1777, - "name": "minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "5490:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1776, - "id": 1778, - "nodeType": "Return", - "src": "5483:17:10" - } - ] - }, - "documentation": null, - "id": 1780, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getMinDeposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1773, - "nodeType": "ParameterList", - "parameters": [], - "src": "5443:2:10" - }, - "payable": false, - "returnParameters": { - "id": 1776, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1775, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1780, - "src": "5467:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1774, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5467:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5466:6:10" - }, - "scope": 1854, - "src": "5421:86:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1814, - "nodeType": "Block", - "src": "5758:393:10", - "statements": [ - { - "assignments": [ - 1788 - ], - "declarations": [ - { - "constant": false, - "id": 1788, - "name": "videoHash", - "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5768:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1787, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5768:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1792, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1790, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5798:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1789, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5788:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5788:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5768:39:10" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1794, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5982:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1793, - "name": "appWasMade", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1759, - "src": "5971:10:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5971:20:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1797, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6017:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1799, - "indexExpression": { - "argumentTypes": null, - "id": 1798, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "6026:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6017:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1800, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "applicationExpiry", - "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "6017:37:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1796, - "name": "isExpired", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6007:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 1801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6007:48:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5971:84:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "6071:24:10", - "subExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1804, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "6086:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1803, - "name": "isWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "6072:13:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1805, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6072:23:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5971:124:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 1811, - "nodeType": "IfStatement", - "src": "5954:168:10", - "trueBody": { - "id": 1810, - "nodeType": "Block", - "src": "6106:16:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1808, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6115:4:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1786, - "id": 1809, - "nodeType": "Return", - "src": "6108:11:10" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 1812, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6139:5:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 1786, - "id": 1813, - "nodeType": "Return", - "src": "6132:12:10" - } - ] - }, - "documentation": "@dev Determines whether the video of an application can be whitelisted.\n@param _videoId The videoId whose status should be examined", - "id": 1815, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "canBeWhitelisted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1782, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5714:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1781, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5714:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5713:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1786, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1785, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5752:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1784, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5752:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5751:6:10" - }, - "scope": 1854, - "src": "5688:463:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1852, - "nodeType": "Block", - "src": "6346:328:10", - "statements": [ - { - "assignments": [ - 1821 - ], - "declarations": [ - { - "constant": false, - "id": 1821, - "name": "videoHash", - "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6356:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1820, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6356:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1825, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1823, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1817, - "src": "6386:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1822, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "6376:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6376:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6356:39:10" - }, - { - "assignments": [ - 1827 - ], - "declarations": [ - { - "constant": false, - "id": 1827, - "name": "listing", - "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6405:23:10", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - }, - "typeName": { - "contractScope": null, - "id": 1826, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "6405:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1831, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1828, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6431:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1830, - "indexExpression": { - "argumentTypes": null, - "id": 1829, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6440:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6431:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6405:45:10" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1832, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6526:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1833, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "unstakedDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6526:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 1834, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6552:1:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6526:27:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 1846, - "nodeType": "IfStatement", - "src": "6522:108:10", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1839, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6590:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1840, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "6590:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1841, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6605:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1842, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "unstakedDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6605:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1837, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "6575:5:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 1838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "6575:14:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 1843, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6575:54:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1836, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "6567:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6567:63:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1845, - "nodeType": "ExpressionStatement", - "src": "6567:63:10" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 1850, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "6641:26:10", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1847, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6648:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1849, - "indexExpression": { - "argumentTypes": null, - "id": 1848, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6657:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6648:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1851, - "nodeType": "ExpressionStatement", - "src": "6641:26:10" - } - ] - }, - "documentation": "@dev deletes a listing from the whitelist and transfers tokens back to owner\n@param _videoId the videoId to be removed", - "id": 1853, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "resetListing", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1818, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1817, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6321:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1816, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6321:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "6320:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1819, - "nodeType": "ParameterList", - "parameters": [], - "src": "6346:0:10" - }, - "scope": 1854, - "src": "6299:375:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "private" - } - ], - "scope": 1855, - "src": "237:6440:10" - } - ], - "src": "0:6678:10" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/TcrPlaceholder.sol", - "exportedSymbols": { - "TcrPlaceholder": [ - 1854 - ] - }, - "id": 1855, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1483, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:10" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1484, - "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 2807, - "src": "26:59:10", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 1485, - "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 872, - "src": "86:28:10", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1486, - "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 1097, - "src": "115:24:10", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1487, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "264:7:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1488, - "nodeType": "InheritanceSpecifier", - "src": "264:7:10" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": "WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n THIS IS JUST A PLACEHOLDER..", - "fullyImplemented": true, - "id": 1854, - "linearizedBaseContracts": [ - 1854, - 2806 - ], - "name": "TcrPlaceholder", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": null, - "id": 1494, - "name": "_Application", - "nodeType": "EventDefinition", - "parameters": { - "id": 1493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1490, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 1494, - "src": "330:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1489, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "330:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1492, - "indexed": false, - "name": "deposit", - "nodeType": "VariableDeclaration", - "scope": 1494, - "src": "346:12:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1491, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "346:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "329:30:10" - }, - "src": "311:49:10" - }, - { - "anonymous": false, - "documentation": null, - "id": 1498, - "name": "_NewVideoWhitelisted", - "nodeType": "EventDefinition", - "parameters": { - "id": 1497, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1496, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 1498, - "src": "392:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1495, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "392:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "391:16:10" - }, - "src": "365:43:10" - }, - { - "canonicalName": "TcrPlaceholder.Listing", - "id": 1509, - "members": [ - { - "constant": false, - "id": 1500, - "name": "applicationExpiry", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "439:22:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1499, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "439:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1502, - "name": "whitelisted", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "505:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1501, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "505:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1504, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "560:13:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1503, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "560:7:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1506, - "name": "unstakedDeposit", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "615:20:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1505, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "615:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1508, - "name": "challengeID", - "nodeType": "VariableDeclaration", - "scope": 1509, - "src": "708:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1507, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "708:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Listing", - "nodeType": "StructDefinition", - "scope": 1854, - "src": "414:352:10", - "visibility": "public" - }, - { - "constant": false, - "id": 1513, - "name": "listings", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "819:43:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" - }, - "typeName": { - "id": 1512, - "keyType": { - "id": 1510, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "827:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "819:27:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" - }, - "valueType": { - "contractScope": null, - "id": 1511, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "838:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1515, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "869:25:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 1514, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "869:12:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1517, - "name": "minDeposit", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "900:22:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1516, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "900:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1519, - "name": "applyStageLen", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "928:25:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1518, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "928:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 1521, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1854, - "src": "959:24:10", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1520, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "959:8:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 1555, - "nodeType": "Block", - "src": "1255:196:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1535, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1532, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1265:5:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1533, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1273:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1273:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1265:18:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1536, - "nodeType": "ExpressionStatement", - "src": "1265:18:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1537, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "1293:8:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1538, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "1304:9:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "1293:20:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1540, - "nodeType": "ExpressionStatement", - "src": "1293:20:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1541, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "1323:5:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1543, - "name": "_tokenAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1525, - "src": "1344:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1542, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1331:12:10", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 1544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1331:24:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "src": "1323:32:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 1546, - "nodeType": "ExpressionStatement", - "src": "1323:32:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1549, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1547, - "name": "minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "1365:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1548, - "name": "_minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1527, - "src": "1378:11:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1365:24:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1550, - "nodeType": "ExpressionStatement", - "src": "1365:24:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1551, - "name": "applyStageLen", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "1399:13:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1552, - "name": "_applyStageLen", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1529, - "src": "1415:14:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1399:30:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1554, - "nodeType": "ExpressionStatement", - "src": "1399:30:10" - } - ] - }, - "documentation": null, - "id": 1556, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1530, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1523, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1140:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1522, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "1140:8:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1525, - "name": "_tokenAddr", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1168:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1524, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1168:7:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1527, - "name": "_minDeposit", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1196:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1526, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1196:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1529, - "name": "_applyStageLen", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "1222:19:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1528, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1222:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1130:117:10" - }, - "payable": false, - "returnParameters": { - "id": 1531, - "nodeType": "ParameterList", - "parameters": [], - "src": "1255:0:10" - }, - "scope": 1854, - "src": "1119:332:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1628, - "nodeType": "Block", - "src": "1818:584:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1567, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1836:24:10", - "subExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1565, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "1851:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1564, - "name": "isWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "1837:13:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1837:23:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1563, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1828:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1828:33:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1569, - "nodeType": "ExpressionStatement", - "src": "1828:33:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1879:21:10", - "subExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1572, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "1891:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1571, - "name": "appWasMade", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1759, - "src": "1880:10:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1573, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1880:20:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1570, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1871:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1871:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1576, - "nodeType": "ExpressionStatement", - "src": "1871:30:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1578, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "1919:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 1579, - "name": "minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "1930:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1919:21:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1577, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1911:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1911:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1582, - "nodeType": "ExpressionStatement", - "src": "1911:30:10" - }, - { - "assignments": [ - 1584 - ], - "declarations": [ - { - "constant": false, - "id": 1584, - "name": "listing", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "1973:23:10", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - }, - "typeName": { - "contractScope": null, - "id": 1583, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "1973:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1590, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1585, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "1999:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1589, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2018:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1586, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2008:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2008:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1999:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1973:55:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1591, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2038:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1593, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2038:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1594, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2054:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1595, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2054:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2038:26:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1597, - "nodeType": "ExpressionStatement", - "src": "2038:26:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1601, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2166:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1602, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2166:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1603, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3250, - "src": "2181:4:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", - "typeString": "contract TcrPlaceholder" - } - }, - { - "argumentTypes": null, - "id": 1604, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2187:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", - "typeString": "contract TcrPlaceholder" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1599, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "2147:5:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 1600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 3040, - "src": "2147:18:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2147:48:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1598, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "2139:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2139:57:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1607, - "nodeType": "ExpressionStatement", - "src": "2139:57:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1608, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2249:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1610, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "applicationExpiry", - "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "2249:25:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1611, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "2277:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2277:12:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "argumentTypes": null, - "id": 1613, - "name": "applyStageLen", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "2292:13:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2277:28:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2249:56:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1616, - "nodeType": "ExpressionStatement", - "src": "2249:56:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1621, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1617, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2315:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1619, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "unstakedDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "2315:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1620, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2341:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2315:33:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1622, - "nodeType": "ExpressionStatement", - "src": "2315:33:10" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1624, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2377:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "argumentTypes": null, - "id": 1625, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2387:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1623, - "name": "_Application", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1494, - "src": "2364:12:10", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2364:31:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1627, - "nodeType": "EmitStatement", - "src": "2359:36:10" - } - ] - }, - "documentation": "allow video creator to apply for whitelisting for a video.\n@param _videoId the videoId\n@param _amount the amount to Stake", - "id": 1629, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "apply", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1561, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1558, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "1778:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1557, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1778:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1560, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "1795:12:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1559, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1795:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1777:31:10" - }, - "payable": false, - "returnParameters": { - "id": 1562, - "nodeType": "ParameterList", - "parameters": [], - "src": "1818:0:10" - }, - "scope": 1854, - "src": "1763:639:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1634, - "nodeType": "Block", - "src": "2614:8:10", - "statements": [] - }, - "documentation": "deposit an amount of tokens. (unstaked)\n@param amount the amount to deposit\n@return {EVENT} returns event log of deposit event.", - "id": 1635, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "deposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1632, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1631, - "name": "amount", - "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "2592:11:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1630, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2592:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2591:13:10" - }, - "payable": false, - "returnParameters": { - "id": 1633, - "nodeType": "ParameterList", - "parameters": [], - "src": "2614:0:10" - }, - "scope": 1854, - "src": "2575:47:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1640, - "nodeType": "Block", - "src": "2788:8:10", - "statements": [] - }, - "documentation": "take out an amount of tokens from the unstaked tokens.\n@param amount the amount to take out", - "id": 1641, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "withdraw", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1638, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1637, - "name": "amount", - "nodeType": "VariableDeclaration", - "scope": 1641, - "src": "2766:11:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1636, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2766:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2765:13:10" - }, - "payable": false, - "returnParameters": { - "id": 1639, - "nodeType": "ParameterList", - "parameters": [], - "src": "2788:0:10" - }, - "scope": 1854, - "src": "2748:48:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1672, - "nodeType": "Block", - "src": "2978:421:10", - "statements": [ - { - "assignments": [ - 1647 - ], - "declarations": [ - { - "constant": false, - "id": 1647, - "name": "listing", - "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2988:23:10", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - }, - "typeName": { - "contractScope": null, - "id": 1646, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "2988:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1653, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1648, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "3014:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1652, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1650, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3033:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1649, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3023:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3023:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3014:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2988:55:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1655, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3062:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1656, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "3062:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1657, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1647, - "src": "3076:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1658, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "3076:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3062:27:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1654, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "3054:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3054:36:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1661, - "nodeType": "ExpressionStatement", - "src": "3054:36:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1664, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3122:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1663, - "name": "isWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "3108:13:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3108:23:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1662, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "3100:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1666, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3100:32:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1667, - "nodeType": "ExpressionStatement", - "src": "3100:32:10" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1669, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3383:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1668, - "name": "resetListing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3370:12:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3370:22:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1671, - "nodeType": "ExpressionStatement", - "src": "3370:22:10" - } - ] - }, - "documentation": "allow video creator to remove a video from the listing and return tokens.\n@param _videoId videoId to remove", - "id": 1673, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "exit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1644, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1643, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2952:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1642, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2952:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2951:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1645, - "nodeType": "ParameterList", - "parameters": [], - "src": "2978:0:10" - }, - "scope": 1854, - "src": "2938:461:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "external" - }, - { - "body": { - "id": 1684, - "nodeType": "Block", - "src": "3582:39:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1681, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1675, - "src": "3605:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1680, - "name": "resetListing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3592:12:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3592:22:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1683, - "nodeType": "ExpressionStatement", - "src": "3592:22:10" - } - ] - }, - "documentation": "remove a video , Only the TCR owner can do this.\n@param _videoId id of the video to remove.", - "id": 1685, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 1678, - "modifierName": { - "argumentTypes": null, - "id": 1677, - "name": "onlyOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "3572:9:10", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "3572:9:10" - } - ], - "name": "removeListing", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1676, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1675, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1685, - "src": "3548:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1674, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3548:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3547:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1679, - "nodeType": "ParameterList", - "parameters": [], - "src": "3582:0:10" - }, - "scope": 1854, - "src": "3525:96:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1707, - "nodeType": "Block", - "src": "3900:191:10", - "statements": [ - { - "condition": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1691, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3931:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1690, - "name": "canBeWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1815, - "src": "3914:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3914:26:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1705, - "nodeType": "Block", - "src": "4052:33:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1702, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3206, - 3207 - ], - "referencedDeclaration": 3206, - "src": "4066:6:10", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4066:8:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1704, - "nodeType": "ExpressionStatement", - "src": "4066:8:10" - } - ] - }, - "id": 1706, - "nodeType": "IfStatement", - "src": "3910:175:10", - "trueBody": { - "id": 1701, - "nodeType": "Block", - "src": "3942:104:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1694, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3977:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1693, - "name": "whitelistApplication", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1727, - "src": "3956:20:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3956:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1696, - "nodeType": "ExpressionStatement", - "src": "3956:30:10" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1698, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "4026:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1697, - "name": "_NewVideoWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1498, - "src": "4005:20:10", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1699, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4005:30:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1700, - "nodeType": "EmitStatement", - "src": "4000:35:10" - } - ] - } - } - ] - }, - "documentation": "@notice Updates a videos's status from 'application' to 'listing'\n@notice or resolves a challenge if one exists.\n@param _videoId The videoId whose status is being updated", - "id": 1708, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "updateStatus", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1688, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1687, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1708, - "src": "3876:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1686, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3876:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3875:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1689, - "nodeType": "ParameterList", - "parameters": [], - "src": "3900:0:10" - }, - "scope": 1854, - "src": "3854:237:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1726, - "nodeType": "Block", - "src": "4432:105:10", - "statements": [ - { - "assignments": [ - 1714 - ], - "declarations": [ - { - "constant": false, - "id": 1714, - "name": "videoHash", - "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4442:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1713, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4442:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1718, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1716, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1710, - "src": "4472:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1715, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4462:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4462:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4442:39:10" - }, - { - "expression": { - "argumentTypes": null, - "id": 1724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1719, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4492:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1721, - "indexExpression": { - "argumentTypes": null, - "id": 1720, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1714, - "src": "4501:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4492:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1722, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "whitelisted", - "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4492:31:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1723, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4526:4:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "4492:38:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1725, - "nodeType": "ExpressionStatement", - "src": "4492:38:10" - } - ] - }, - "documentation": "@dev Called by updateStatus() if the applicationExpiry date passed without a\nchallenge being made\n@dev Called by resolveChallenge() if an application/listing beat a challenge.\n@param _videoId The _videoId of an application/listing to be whitelisted", - "id": 1727, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "whitelistApplication", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1711, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1710, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4407:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1709, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4407:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4406:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1712, - "nodeType": "ParameterList", - "parameters": [], - "src": "4432:0:10" - }, - "scope": 1854, - "src": "4377:160:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "private" - }, - { - "body": { - "id": 1741, - "nodeType": "Block", - "src": "4952:65:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1734, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4969:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1738, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1736, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1729, - "src": "4988:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1735, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4978:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4978:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4969:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1739, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "whitelisted", - "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4969:41:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1733, - "id": 1740, - "nodeType": "Return", - "src": "4962:48:10" - } - ] - }, - "documentation": "@dev returns true if video is whitelisted", - "id": 1742, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isWhitelisted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1730, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1729, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4896:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1728, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4896:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4895:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1733, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1732, - "name": "whitelisted", - "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4934:16:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1731, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4934:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "4933:18:10" - }, - "scope": 1854, - "src": "4873:144:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1758, - "nodeType": "Block", - "src": "5154:75:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1749, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "5171:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1753, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1751, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "5190:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1750, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5180:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5180:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5171:29:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1754, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "applicationExpiry", - "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "5171:47:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 1755, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5221:1:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5171:51:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1748, - "id": 1757, - "nodeType": "Return", - "src": "5164:58:10" - } - ] - }, - "documentation": null, - "id": 1759, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "appWasMade", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1745, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1744, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5103:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1743, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5103:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5102:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1748, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1747, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5141:11:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1746, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5141:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5140:13:10" - }, - "scope": 1854, - "src": "5083:146:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1771, - "nodeType": "Block", - "src": "5367:48:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1766, - "name": "_termDate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1761, - "src": "5384:9:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1767, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "5396:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 1768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "5396:12:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5384:24:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1765, - "id": 1770, - "nodeType": "Return", - "src": "5377:31:10" - } - ] - }, - "documentation": "@dev returns true if the provided termDate has passed", - "id": 1772, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isExpired", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1761, - "name": "_termDate", - "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5316:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1760, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5316:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5315:16:10" - }, - "payable": false, - "returnParameters": { - "id": 1765, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1764, - "name": "expired", - "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5353:12:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1763, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5353:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5352:14:10" - }, - "scope": 1854, - "src": "5297:118:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1779, - "nodeType": "Block", - "src": "5473:34:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1777, - "name": "minDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "5490:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1776, - "id": 1778, - "nodeType": "Return", - "src": "5483:17:10" - } - ] - }, - "documentation": null, - "id": 1780, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "getMinDeposit", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1773, - "nodeType": "ParameterList", - "parameters": [], - "src": "5443:2:10" - }, - "payable": false, - "returnParameters": { - "id": 1776, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1775, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1780, - "src": "5467:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1774, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5467:4:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5466:6:10" - }, - "scope": 1854, - "src": "5421:86:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1814, - "nodeType": "Block", - "src": "5758:393:10", - "statements": [ - { - "assignments": [ - 1788 - ], - "declarations": [ - { - "constant": false, - "id": 1788, - "name": "videoHash", - "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5768:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1787, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5768:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1792, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1790, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5798:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1789, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5788:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5788:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5768:39:10" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1794, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5982:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1793, - "name": "appWasMade", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1759, - "src": "5971:10:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5971:20:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1797, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6017:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1799, - "indexExpression": { - "argumentTypes": null, - "id": 1798, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "6026:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6017:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "id": 1800, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "applicationExpiry", - "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "6017:37:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1796, - "name": "isExpired", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6007:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 1801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6007:48:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5971:84:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "6071:24:10", - "subExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1804, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "6086:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1803, - "name": "isWhitelisted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "6072:13:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", - "typeString": "function (string memory) view returns (bool)" - } - }, - "id": 1805, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6072:23:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5971:124:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 1811, - "nodeType": "IfStatement", - "src": "5954:168:10", - "trueBody": { - "id": 1810, - "nodeType": "Block", - "src": "6106:16:10", - "statements": [ - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1808, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6115:4:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 1786, - "id": 1809, - "nodeType": "Return", - "src": "6108:11:10" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 1812, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6139:5:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 1786, - "id": 1813, - "nodeType": "Return", - "src": "6132:12:10" - } - ] - }, - "documentation": "@dev Determines whether the video of an application can be whitelisted.\n@param _videoId The videoId whose status should be examined", - "id": 1815, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "canBeWhitelisted", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1782, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5714:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1781, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5714:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5713:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1786, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1785, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5752:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1784, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5752:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5751:6:10" - }, - "scope": 1854, - "src": "5688:463:10", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1852, - "nodeType": "Block", - "src": "6346:328:10", - "statements": [ - { - "assignments": [ - 1821 - ], - "declarations": [ - { - "constant": false, - "id": 1821, - "name": "videoHash", - "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6356:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1820, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "6356:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1825, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1823, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1817, - "src": "6386:8:10", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1822, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "6376:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 1824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6376:19:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6356:39:10" - }, - { - "assignments": [ - 1827 - ], - "declarations": [ - { - "constant": false, - "id": 1827, - "name": "listing", - "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6405:23:10", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - }, - "typeName": { - "contractScope": null, - "id": 1826, - "name": "Listing", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "6405:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1831, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1828, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6431:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1830, - "indexExpression": { - "argumentTypes": null, - "id": 1829, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6440:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6431:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6405:45:10" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1832, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6526:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1833, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "unstakedDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6526:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 1834, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6552:1:10", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6526:27:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 1846, - "nodeType": "IfStatement", - "src": "6522:108:10", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1839, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6590:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1840, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "6590:13:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1841, - "name": "listing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6605:7:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", - "typeString": "struct TcrPlaceholder.Listing storage pointer" - } - }, - "id": 1842, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "unstakedDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6605:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 1837, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "6575:5:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 1838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "6575:14:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 1843, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6575:54:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1836, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "6567:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6567:63:10", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1845, - "nodeType": "ExpressionStatement", - "src": "6567:63:10" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 1850, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "6641:26:10", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1847, - "name": "listings", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6648:8:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", - "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" - } - }, - "id": 1849, - "indexExpression": { - "argumentTypes": null, - "id": 1848, - "name": "videoHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6657:9:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6648:19:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", - "typeString": "struct TcrPlaceholder.Listing storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1851, - "nodeType": "ExpressionStatement", - "src": "6641:26:10" - } - ] - }, - "documentation": "@dev deletes a listing from the whitelist and transfers tokens back to owner\n@param _videoId the videoId to be removed", - "id": 1853, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "resetListing", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1818, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1817, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6321:15:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1816, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6321:6:10", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "6320:17:10" - }, - "payable": false, - "returnParameters": { - "id": 1819, - "nodeType": "ParameterList", - "parameters": [], - "src": "6346:0:10" - }, - "scope": 1854, - "src": "6299:375:10", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "private" - } - ], - "scope": 1855, - "src": "237:6440:10" - } - ], - "src": "0:6678:10" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.678Z" -} \ No newline at end of file +{"contractName":"TcrPlaceholder","abi":[{"constant":true,"inputs":[],"name":"minDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"applyStageLen","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"listings","outputs":[{"name":"applicationExpiry","type":"uint256"},{"name":"whitelisted","type":"bool"},{"name":"owner","type":"address"},{"name":"unstakedDeposit","type":"uint256"},{"name":"challengeID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_tokenAddr","type":"address"},{"name":"_minDeposit","type":"uint256"},{"name":"_applyStageLen","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"deposit","type":"uint256"}],"name":"_Application","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"_NewVideoWhitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_amount","type":"uint256"}],"name":"apply","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"removeListing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"updateStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"isWhitelisted","outputs":[{"name":"whitelisted","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"appWasMade","outputs":[{"name":"exists","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_termDate","type":"uint256"}],"name":"isExpired","outputs":[{"name":"expired","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMinDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"canBeWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516080806117ba83398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003819055508060048190555050505050611646806101746000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107d1565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610891565b005b34801561024f57600080fd5b50610258610894565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061089a565b005b3480156102e357600080fd5b506102ec610901565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b50610343610927565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e61092d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610952565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c60048036038101908080359060200190929190505050610a55565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610a58565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610db9565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e1c565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610f53565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610f5f565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ea565b005b34801561068457600080fd5b5061068d61123f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040516020018082805190602001908083835b60208310151561071957805182526020820191506020810190506020830392506106f4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610782578051825260208201915060208101905060208303925061075d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b6107da81610e1c565b15610889576107e881611265565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084a57808201518184015260208101905061082f565b50505050905090810190601f1680156108775780820380516001836020036101000a031916815260200191505b509250505060405180910390a161088e565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f557600080fd5b6108fe81611372565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040516020018082805190602001908083835b602083101515610991578051825260208201915060208101905060208303925061096c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109fa57805182526020820191506020810190506020830392506109d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b6000610a9584848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b151515610aa157600080fd5b610adc84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610ae857600080fd5b6003548210151515610af957600080fd5b600160008585604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610b595780518252602082019150602081019050602083039250610b34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610cfe57600080fd5b505af1158015610d12573d6000803e3d6000fd5b505050506040513d6020811015610d2857600080fd5b81019080805190602001909291905050501515610d4457600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040516020018082805190602001908083835b602083101515610e585780518252602082019150602081019050602083039250610e33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ec15780518252602082019150602081019050602083039250610e9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610ef9836106d9565b8015610f285750610f2760016000836000191660001916815260200190815260200160002060000154610f53565b5b8015610f3a5750610f3883610952565b155b15610f485760019150610f4d565b600091505b50919050565b60004382109050919050565b6000600160008484604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610fc15780518252602082019150602081019050602083039250610f9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561106457600080fd5b61109f83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b15156110aa57600080fd5b6110e583838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611372565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040516020018082805190602001908083835b6020831015156112a0578051825260208201915060208101905060208303925061127b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130957805182526020820191506020810190506020830392506112e4565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040516020018082805190602001908083835b6020831015156113ae5780518252602082019150602081019050602083039250611389565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561141757805182526020820191506020810190506020830392506113f2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156115a457600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561155d57600080fd5b505af1158015611571573d6000803e3d6000fd5b505050506040513d602081101561158757600080fd5b810190808051906020019092919050505015156115a357600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a723058202be8c13214e02cc6365a7dbe80e53a56a58bdf2b099e1481524fffc629145da00029"} \ No newline at end of file diff --git a/build/contracts/Users.json b/build/contracts/Users.json index f91995f..d2ffa85 100644 --- a/build/contracts/Users.json +++ b/build/contracts/Users.json @@ -1,3761 +1 @@ -{ - "contractName": "Users", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "address" - } - ], - "name": "users", - "outputs": [ - { - "name": "name", - "type": "string" - }, - { - "name": "email", - "type": "string" - }, - { - "name": "ipfsData", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "name": "_registry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_address", - "type": "address" - }, - { - "indexed": false, - "name": "_name", - "type": "string" - }, - { - "indexed": false, - "name": "_email", - "type": "string" - }, - { - "indexed": false, - "name": "_ipfsData", - "type": "string" - } - ], - "name": "LogCreateUser", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_address", - "type": "address" - } - ], - "name": "LogRemoveUser", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_address", - "type": "address" - }, - { - "name": "_name", - "type": "string" - }, - { - "name": "_email", - "type": "string" - }, - { - "name": "_ipfsData", - "type": "string" - } - ], - "name": "create", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "remove", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_address", - "type": "address" - } - ], - "name": "get", - "outputs": [ - { - "name": "", - "type": "string" - }, - { - "name": "", - "type": "string" - }, - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a7230582090c7e1bf33f385a8e7c7ce8cf02e26fa88093759f6c15c5a54729a26665fd4d90029", - "deployedBytecode": "0x608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a7230582090c7e1bf33f385a8e7c7ce8cf02e26fa88093759f6c15c5a54729a26665fd4d90029", - "sourceMap": "112:1951:11:-;;;633:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;633:104:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;690:10:11;682:5;;:18;;;;;;;;;;;;;;;;;;721:9;710:8;;:20;;;;;;;;;;;;;;;;;;633:104;112:1951;;;;;;", - "deployedSourceMap": "112:1951:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1553:144;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1553:144:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;1018:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1018:370:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;266:40:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1859:202;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1553:144:11;1610:8;577:5;;;;;;;;;;;563:19;;:10;:19;;;:45;;;;600:8;586:22;;:10;:22;;;563:45;555:54;;;;;;;;1637:5;:15;1643:8;1637:15;;;;;;;;;;;;;;;;1630:22;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;1681:8;1667:23;;;;;;;;;;;;1553:144;;:::o;1018:370::-;1168:8;577:5;;;;;;;;;;;563:19;;:10;:19;;;:45;;;;600:8;586:22;;:10;:22;;;563:45;555:54;;;;;;;;1211:105;;;;;;;;;1240:5;1211:105;;;;1266:6;1211:105;;;;1296:9;1211:105;;;1193:5;:15;1199:8;1193:15;;;;;;;;;;;;;;;:123;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;1346:8;1332:49;;;1356:5;1363:6;1371:9;1332:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1332:49:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1332:49:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1332:49:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1018:370;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;266:40:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1859:202::-;1910:6;1918;1926;1944:25;1972:5;:15;1978:8;1972:15;;;;;;;;;;;;;;;1944:43;;2005:8;:13;;2020:8;:14;;2036:8;:17;;1997:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1859:202;;;;;;:::o;827:169:16:-;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;112:1951:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./Registry.sol\";\n\ncontract Users is Ownable {\n\n Registry registry;\n\n struct UserInfo {\n string name;\n string email;\n string ipfsData;\n }\n\n mapping (address=>UserInfo) public users;\n\n event LogCreateUser(\n address indexed _address,\n string _name,\n string _email,\n string _ipfsData\n );\n\n event LogRemoveUser(address indexed _address);\n\n modifier onlyOwnerOrUser(address _address) {\n require(msg.sender == owner || msg.sender == _address);\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n /**\n * @dev Register a new user\n * @param _address - the ethereum address of the user\n * @param _name - the name of the user\n * @param _email - the email address of the user\n * @param _ipfsData - the hash of a JSON file with data of the video\n */\n function create(\n address _address,\n string _name,\n string _email,\n string _ipfsData\n )\n public onlyOwnerOrUser(_address) \n {\n users[_address] = UserInfo({\n name: _name,\n email: _email,\n ipfsData: _ipfsData\n });\n\n emit LogCreateUser(_address, _name, _email, _ipfsData);\n }\n\n /**\n * @dev unregister a User\n * Deletes the data of the user from users\n * @param _address the address of the user to be unregistered\n */\n function remove(address _address) public onlyOwnerOrUser(_address) {\n delete users[_address];\n emit LogRemoveUser(_address);\n }\n\n /**\n * @dev return information about the user\n * @param _address the address of the user\n * @return a tuple (name, email, ipfsData)\n */\n function get(address _address) public view returns(string, string, string) {\n UserInfo storage userInfo = users[_address];\n return (userInfo.name, userInfo.email, userInfo.ipfsData);\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", - "exportedSymbols": { - "Users": [ - 1997 - ] - }, - "id": 1998, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1856, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:11" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1857, - "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 2807, - "src": "26:59:11", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1858, - "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 1097, - "src": "86:24:11", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1859, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "130:7:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1860, - "nodeType": "InheritanceSpecifier", - "src": "130:7:11" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1997, - "linearizedBaseContracts": [ - 1997, - 2806 - ], - "name": "Users", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 1862, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1997, - "src": "145:17:11", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1861, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "145:8:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - }, - { - "canonicalName": "Users.UserInfo", - "id": 1869, - "members": [ - { - "constant": false, - "id": 1864, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "195:11:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1863, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "195:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1866, - "name": "email", - "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "216:12:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1865, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "216:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1868, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "238:15:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1867, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "238:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "UserInfo", - "nodeType": "StructDefinition", - "scope": 1997, - "src": "169:91:11", - "visibility": "public" - }, - { - "constant": false, - "id": 1873, - "name": "users", - "nodeType": "VariableDeclaration", - "scope": 1997, - "src": "266:40:11", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo)" - }, - "typeName": { - "id": 1872, - "keyType": { - "id": 1870, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "275:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "266:27:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo)" - }, - "valueType": { - "contractScope": null, - "id": 1871, - "name": "UserInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, - "src": "284:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 1883, - "name": "LogCreateUser", - "nodeType": "EventDefinition", - "parameters": { - "id": 1882, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1875, - "indexed": true, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "342:24:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1874, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "342:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1877, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "376:12:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1876, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "376:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1879, - "indexed": false, - "name": "_email", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "398:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1878, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "398:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1881, - "indexed": false, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "421:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1880, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "421:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "332:111:11" - }, - "src": "313:131:11" - }, - { - "anonymous": false, - "documentation": null, - "id": 1887, - "name": "LogRemoveUser", - "nodeType": "EventDefinition", - "parameters": { - "id": 1886, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1885, - "indexed": true, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1887, - "src": "470:24:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1884, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "470:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "469:26:11" - }, - "src": "450:46:11" - }, - { - "body": { - "id": 1904, - "nodeType": "Block", - "src": "545:82:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1900, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1895, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1892, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "563:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1893, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "563:10:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 1894, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "577:5:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "563:19:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1899, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1896, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "586:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1897, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "586:10:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 1898, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1889, - "src": "600:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "586:22:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "563:45:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1891, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "555:7:11", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "555:54:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1902, - "nodeType": "ExpressionStatement", - "src": "555:54:11" - }, - { - "id": 1903, - "nodeType": "PlaceholderStatement", - "src": "619:1:11" - } - ] - }, - "documentation": null, - "id": 1905, - "name": "onlyOwnerOrUser", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1890, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1889, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1905, - "src": "527:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1888, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "527:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "526:18:11" - }, - "src": "502:125:11", - "visibility": "internal" - }, - { - "body": { - "id": 1919, - "nodeType": "Block", - "src": "672:65:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1910, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "682:5:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1911, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "690:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1912, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "690:10:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "682:18:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1914, - "nodeType": "ExpressionStatement", - "src": "682:18:11" - }, - { - "expression": { - "argumentTypes": null, - "id": 1917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1915, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1862, - "src": "710:8:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1916, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1907, - "src": "721:9:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "710:20:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1918, - "nodeType": "ExpressionStatement", - "src": "710:20:11" - } - ] - }, - "documentation": null, - "id": 1920, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1908, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1907, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1920, - "src": "645:18:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1906, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "645:8:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "644:20:11" - }, - "payable": false, - "returnParameters": { - "id": 1909, - "nodeType": "ParameterList", - "parameters": [], - "src": "672:0:11" - }, - "scope": 1997, - "src": "633:104:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1951, - "nodeType": "Block", - "src": "1183:205:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1934, - "name": "users", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "1193:5:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo storage ref)" - } - }, - "id": 1936, - "indexExpression": { - "argumentTypes": null, - "id": 1935, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1922, - "src": "1199:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1193:15:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1938, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1924, - "src": "1240:5:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1939, - "name": "_email", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1926, - "src": "1266:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1940, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1928, - "src": "1296:9:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": null, - "id": 1937, - "name": "UserInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "1211:8:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_UserInfo_$1869_storage_ptr_$", - "typeString": "type(struct Users.UserInfo storage pointer)" - } - }, - "id": 1941, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "name", - "email", - "ipfsData" - ], - "nodeType": "FunctionCall", - "src": "1211:105:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_memory", - "typeString": "struct Users.UserInfo memory" - } - }, - "src": "1193:123:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "id": 1943, - "nodeType": "ExpressionStatement", - "src": "1193:123:11" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1945, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1922, - "src": "1346:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1946, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1924, - "src": "1356:5:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1947, - "name": "_email", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1926, - "src": "1363:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1948, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1928, - "src": "1371:9:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1944, - "name": "LogCreateUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1883, - "src": "1332:13:11", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory,string memory)" - } - }, - "id": 1949, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1332:49:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1950, - "nodeType": "EmitStatement", - "src": "1327:54:11" - } - ] - }, - "documentation": "@dev Register a new user\n@param _address - the ethereum address of the user\n@param _name - the name of the user\n@param _email - the email address of the user\n@param _ipfsData - the hash of a JSON file with data of the video", - "id": 1952, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 1931, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1922, - "src": "1168:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1932, - "modifierName": { - "argumentTypes": null, - "id": 1930, - "name": "onlyOwnerOrUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1905, - "src": "1152:15:11", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "1152:25:11" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1929, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1922, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1043:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1921, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1043:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1924, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1069:12:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1923, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1069:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1926, - "name": "_email", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1091:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1925, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1091:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1928, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1114:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1927, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1114:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1033:103:11" - }, - "payable": false, - "returnParameters": { - "id": 1933, - "nodeType": "ParameterList", - "parameters": [], - "src": "1183:0:11" - }, - "scope": 1997, - "src": "1018:370:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1969, - "nodeType": "Block", - "src": "1620:77:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1630:22:11", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1960, - "name": "users", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "1637:5:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo storage ref)" - } - }, - "id": 1962, - "indexExpression": { - "argumentTypes": null, - "id": 1961, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1954, - "src": "1643:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1637:15:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1964, - "nodeType": "ExpressionStatement", - "src": "1630:22:11" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1966, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1954, - "src": "1681:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1965, - "name": "LogRemoveUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1887, - "src": "1667:13:11", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1967, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1667:23:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1968, - "nodeType": "EmitStatement", - "src": "1662:28:11" - } - ] - }, - "documentation": "@dev unregister a User\nDeletes the data of the user from users\n@param _address the address of the user to be unregistered", - "id": 1970, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 1957, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1954, - "src": "1610:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1958, - "modifierName": { - "argumentTypes": null, - "id": 1956, - "name": "onlyOwnerOrUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1905, - "src": "1594:15:11", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "1594:25:11" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1955, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1954, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1970, - "src": "1569:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1953, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1569:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1568:18:11" - }, - "payable": false, - "returnParameters": { - "id": 1959, - "nodeType": "ParameterList", - "parameters": [], - "src": "1620:0:11" - }, - "scope": 1997, - "src": "1553:144:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1995, - "nodeType": "Block", - "src": "1934:127:11", - "statements": [ - { - "assignments": [ - 1982 - ], - "declarations": [ - { - "constant": false, - "id": 1982, - "name": "userInfo", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1944:25:11", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo" - }, - "typeName": { - "contractScope": null, - "id": 1981, - "name": "UserInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, - "src": "1944:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1986, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1983, - "name": "users", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "1972:5:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo storage ref)" - } - }, - "id": 1985, - "indexExpression": { - "argumentTypes": null, - "id": 1984, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1972, - "src": "1978:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1972:15:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1944:43:11" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1987, - "name": "userInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1982, - "src": "2005:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo storage pointer" - } - }, - "id": 1988, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1864, - "src": "2005:13:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1989, - "name": "userInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1982, - "src": "2020:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo storage pointer" - } - }, - "id": 1990, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "email", - "nodeType": "MemberAccess", - "referencedDeclaration": 1866, - "src": "2020:14:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1991, - "name": "userInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1982, - "src": "2036:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo storage pointer" - } - }, - "id": 1992, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 1868, - "src": "2036:17:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "id": 1993, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2004:50:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_string_storage_$_t_string_storage_$_t_string_storage_$", - "typeString": "tuple(string storage ref,string storage ref,string storage ref)" - } - }, - "functionReturnParameters": 1980, - "id": 1994, - "nodeType": "Return", - "src": "1997:57:11" - } - ] - }, - "documentation": "@dev return information about the user\n@param _address the address of the user\n@return a tuple (name, email, ipfsData)", - "id": 1996, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1973, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1972, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1872:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1971, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1872:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1871:18:11" - }, - "payable": false, - "returnParameters": { - "id": 1980, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1975, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1910:6:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1974, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1910:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1977, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1918:6:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1976, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1918:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1979, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1926:6:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1978, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1926:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1909:24:11" - }, - "scope": 1997, - "src": "1859:202:11", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1998, - "src": "112:1951:11" - } - ], - "src": "0:2064:11" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", - "exportedSymbols": { - "Users": [ - 1997 - ] - }, - "id": 1998, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1856, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:11" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1857, - "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 2807, - "src": "26:59:11", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 1858, - "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 1097, - "src": "86:24:11", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 1859, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "130:7:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 1860, - "nodeType": "InheritanceSpecifier", - "src": "130:7:11" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1997, - "linearizedBaseContracts": [ - 1997, - 2806 - ], - "name": "Users", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 1862, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 1997, - "src": "145:17:11", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1861, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "145:8:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - }, - { - "canonicalName": "Users.UserInfo", - "id": 1869, - "members": [ - { - "constant": false, - "id": 1864, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "195:11:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1863, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "195:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1866, - "name": "email", - "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "216:12:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1865, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "216:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1868, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "238:15:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1867, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "238:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "UserInfo", - "nodeType": "StructDefinition", - "scope": 1997, - "src": "169:91:11", - "visibility": "public" - }, - { - "constant": false, - "id": 1873, - "name": "users", - "nodeType": "VariableDeclaration", - "scope": 1997, - "src": "266:40:11", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo)" - }, - "typeName": { - "id": 1872, - "keyType": { - "id": 1870, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "275:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "266:27:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo)" - }, - "valueType": { - "contractScope": null, - "id": 1871, - "name": "UserInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, - "src": "284:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 1883, - "name": "LogCreateUser", - "nodeType": "EventDefinition", - "parameters": { - "id": 1882, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1875, - "indexed": true, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "342:24:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1874, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "342:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1877, - "indexed": false, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "376:12:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1876, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "376:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1879, - "indexed": false, - "name": "_email", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "398:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1878, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "398:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1881, - "indexed": false, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "421:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1880, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "421:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "332:111:11" - }, - "src": "313:131:11" - }, - { - "anonymous": false, - "documentation": null, - "id": 1887, - "name": "LogRemoveUser", - "nodeType": "EventDefinition", - "parameters": { - "id": 1886, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1885, - "indexed": true, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1887, - "src": "470:24:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1884, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "470:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "469:26:11" - }, - "src": "450:46:11" - }, - { - "body": { - "id": 1904, - "nodeType": "Block", - "src": "545:82:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1900, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1895, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1892, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "563:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1893, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "563:10:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 1894, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "577:5:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "563:19:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1899, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1896, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "586:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1897, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "586:10:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 1898, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1889, - "src": "600:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "586:22:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "563:45:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1891, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "555:7:11", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "555:54:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1902, - "nodeType": "ExpressionStatement", - "src": "555:54:11" - }, - { - "id": 1903, - "nodeType": "PlaceholderStatement", - "src": "619:1:11" - } - ] - }, - "documentation": null, - "id": 1905, - "name": "onlyOwnerOrUser", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1890, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1889, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1905, - "src": "527:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1888, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "527:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "526:18:11" - }, - "src": "502:125:11", - "visibility": "internal" - }, - { - "body": { - "id": 1919, - "nodeType": "Block", - "src": "672:65:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1910, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "682:5:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1911, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "690:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1912, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "690:10:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "682:18:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1914, - "nodeType": "ExpressionStatement", - "src": "682:18:11" - }, - { - "expression": { - "argumentTypes": null, - "id": 1917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1915, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1862, - "src": "710:8:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 1916, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1907, - "src": "721:9:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "710:20:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 1918, - "nodeType": "ExpressionStatement", - "src": "710:20:11" - } - ] - }, - "documentation": null, - "id": 1920, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1908, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1907, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 1920, - "src": "645:18:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 1906, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "645:8:11", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "644:20:11" - }, - "payable": false, - "returnParameters": { - "id": 1909, - "nodeType": "ParameterList", - "parameters": [], - "src": "672:0:11" - }, - "scope": 1997, - "src": "633:104:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1951, - "nodeType": "Block", - "src": "1183:205:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1934, - "name": "users", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "1193:5:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo storage ref)" - } - }, - "id": 1936, - "indexExpression": { - "argumentTypes": null, - "id": 1935, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1922, - "src": "1199:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1193:15:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1938, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1924, - "src": "1240:5:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1939, - "name": "_email", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1926, - "src": "1266:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1940, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1928, - "src": "1296:9:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": null, - "id": 1937, - "name": "UserInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "1211:8:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_UserInfo_$1869_storage_ptr_$", - "typeString": "type(struct Users.UserInfo storage pointer)" - } - }, - "id": 1941, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "name", - "email", - "ipfsData" - ], - "nodeType": "FunctionCall", - "src": "1211:105:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_memory", - "typeString": "struct Users.UserInfo memory" - } - }, - "src": "1193:123:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "id": 1943, - "nodeType": "ExpressionStatement", - "src": "1193:123:11" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1945, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1922, - "src": "1346:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 1946, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1924, - "src": "1356:5:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1947, - "name": "_email", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1926, - "src": "1363:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 1948, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1928, - "src": "1371:9:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1944, - "name": "LogCreateUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1883, - "src": "1332:13:11", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory,string memory)" - } - }, - "id": 1949, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1332:49:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1950, - "nodeType": "EmitStatement", - "src": "1327:54:11" - } - ] - }, - "documentation": "@dev Register a new user\n@param _address - the ethereum address of the user\n@param _name - the name of the user\n@param _email - the email address of the user\n@param _ipfsData - the hash of a JSON file with data of the video", - "id": 1952, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 1931, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1922, - "src": "1168:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1932, - "modifierName": { - "argumentTypes": null, - "id": 1930, - "name": "onlyOwnerOrUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1905, - "src": "1152:15:11", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "1152:25:11" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1929, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1922, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1043:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1921, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1043:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1924, - "name": "_name", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1069:12:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1923, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1069:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1926, - "name": "_email", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1091:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1925, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1091:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1928, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 1952, - "src": "1114:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1927, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1114:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1033:103:11" - }, - "payable": false, - "returnParameters": { - "id": 1933, - "nodeType": "ParameterList", - "parameters": [], - "src": "1183:0:11" - }, - "scope": 1997, - "src": "1018:370:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1969, - "nodeType": "Block", - "src": "1620:77:11", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1630:22:11", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1960, - "name": "users", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "1637:5:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo storage ref)" - } - }, - "id": 1962, - "indexExpression": { - "argumentTypes": null, - "id": 1961, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1954, - "src": "1643:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1637:15:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1964, - "nodeType": "ExpressionStatement", - "src": "1630:22:11" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1966, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1954, - "src": "1681:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1965, - "name": "LogRemoveUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1887, - "src": "1667:13:11", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1967, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1667:23:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1968, - "nodeType": "EmitStatement", - "src": "1662:28:11" - } - ] - }, - "documentation": "@dev unregister a User\nDeletes the data of the user from users\n@param _address the address of the user to be unregistered", - "id": 1970, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 1957, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1954, - "src": "1610:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1958, - "modifierName": { - "argumentTypes": null, - "id": 1956, - "name": "onlyOwnerOrUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1905, - "src": "1594:15:11", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "1594:25:11" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1955, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1954, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1970, - "src": "1569:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1953, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1569:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1568:18:11" - }, - "payable": false, - "returnParameters": { - "id": 1959, - "nodeType": "ParameterList", - "parameters": [], - "src": "1620:0:11" - }, - "scope": 1997, - "src": "1553:144:11", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1995, - "nodeType": "Block", - "src": "1934:127:11", - "statements": [ - { - "assignments": [ - 1982 - ], - "declarations": [ - { - "constant": false, - "id": 1982, - "name": "userInfo", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1944:25:11", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo" - }, - "typeName": { - "contractScope": null, - "id": 1981, - "name": "UserInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, - "src": "1944:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 1986, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1983, - "name": "users", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "1972:5:11", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", - "typeString": "mapping(address => struct Users.UserInfo storage ref)" - } - }, - "id": 1985, - "indexExpression": { - "argumentTypes": null, - "id": 1984, - "name": "_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1972, - "src": "1978:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1972:15:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", - "typeString": "struct Users.UserInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1944:43:11" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1987, - "name": "userInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1982, - "src": "2005:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo storage pointer" - } - }, - "id": 1988, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 1864, - "src": "2005:13:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1989, - "name": "userInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1982, - "src": "2020:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo storage pointer" - } - }, - "id": 1990, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "email", - "nodeType": "MemberAccess", - "referencedDeclaration": 1866, - "src": "2020:14:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1991, - "name": "userInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1982, - "src": "2036:8:11", - "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", - "typeString": "struct Users.UserInfo storage pointer" - } - }, - "id": 1992, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 1868, - "src": "2036:17:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "id": 1993, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2004:50:11", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_string_storage_$_t_string_storage_$_t_string_storage_$", - "typeString": "tuple(string storage ref,string storage ref,string storage ref)" - } - }, - "functionReturnParameters": 1980, - "id": 1994, - "nodeType": "Return", - "src": "1997:57:11" - } - ] - }, - "documentation": "@dev return information about the user\n@param _address the address of the user\n@return a tuple (name, email, ipfsData)", - "id": 1996, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1973, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1972, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1872:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1971, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1872:7:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1871:18:11" - }, - "payable": false, - "returnParameters": { - "id": 1980, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1975, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1910:6:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1974, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1910:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1977, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1918:6:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1976, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1918:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1979, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1996, - "src": "1926:6:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1978, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1926:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1909:24:11" - }, - "scope": 1997, - "src": "1859:202:11", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1998, - "src": "112:1951:11" - } - ], - "src": "0:2064:11" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.682Z" -} \ No newline at end of file +{"contractName":"Users","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"users","outputs":[{"name":"name","type":"string"},{"name":"email","type":"string"},{"name":"ipfsData","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_email","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"LogRemoveUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_name","type":"string"},{"name":"_email","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"get","outputs":[{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a723058205f6c1978a268ed99c588a5bc3e70f50bd3aec2ea115cdb08024a1fc55285b59c0029"} \ No newline at end of file diff --git a/build/contracts/Videos.json b/build/contracts/Videos.json index 63b1820..feaf9ac 100644 --- a/build/contracts/Videos.json +++ b/build/contracts/Videos.json @@ -1,7467 +1 @@ -{ - "contractName": "Videos", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "paratiiRegistry", - "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": [ - { - "name": "_paratiiRegistry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "videoId", - "type": "string" - }, - { - "indexed": false, - "name": "owner", - "type": "address" - }, - { - "indexed": false, - "name": "price", - "type": "uint256" - }, - { - "indexed": false, - "name": "ipfsHashOrig", - "type": "string" - }, - { - "indexed": false, - "name": "ipfsHash", - "type": "string" - }, - { - "indexed": false, - "name": "ipfsData", - "type": "string" - }, - { - "indexed": false, - "name": "registrar", - "type": "address" - } - ], - "name": "LogCreateVideo", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "videoId", - "type": "string" - } - ], - "name": "LogRemoveVideo", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - }, - { - "name": "_owner", - "type": "address" - }, - { - "name": "_price", - "type": "uint256" - }, - { - "name": "_ipfsHashOrig", - "type": "string" - }, - { - "name": "_ipfsHash", - "type": "string" - }, - { - "name": "_ipfsData", - "type": "string" - } - ], - "name": "create", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "remove", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_videoId", - "type": "string" - } - ], - "name": "get", - "outputs": [ - { - "name": "", - "type": "address" - }, - { - "name": "", - "type": "uint256" - }, - { - "name": "", - "type": "string" - }, - { - "name": "", - "type": "string" - }, - { - "name": "", - "type": "string" - }, - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b506040516020806115a083398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061149c806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b84565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e53565b005b34801561047e57600080fd5b506104876111e3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611208565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061122e565b005b600086600080826040518082805190602001908083835b60208310151561059f578051825260208201915060208101905060208303925061057a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610734575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806106d957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061073357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b151561073f57600080fd5b896040518082805190602001908083835b6020831015156107755780518252602082019150602081019050602083039250610750565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061084f929190611383565b50604082015181600201908051906020019061086c929190611383565b506060820151816003019080519060200190610889929190611383565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610a035780820151818401526020810190506109e8565b50505050905090810190601f168015610a305780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610a69578082015181840152602081019050610a4e565b50505050905090810190601f168015610a965780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610acf578082015181840152602081019050610ab4565b50505050905090810190601f168015610afc5780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610b35578082015181840152602081019050610b1a565b50505050905090810190601f168015610b625780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040518082805190602001908083835b602083101515610bc95780518252602082019150602081019050602083039250610ba4565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cfe5780601f10610cd357610100808354040283529160200191610cfe565b820191906000526020600020905b815481529060010190602001808311610ce157829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d9a5780601f10610d6f57610100808354040283529160200191610d9a565b820191906000526020600020905b815481529060010190602001808311610d7d57829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e365780601f10610e0b57610100808354040283529160200191610e36565b820191906000526020600020905b815481529060010190602001808311610e1957829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040518082805190602001908083835b602083101515610e8f5780518252602082019150602081019050602083039250610e6a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611024575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610fc957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061102357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b151561102f57600080fd5b846040518082805190602001908083835b6020831015156110655780518252602082019150602081019050602083039250611040565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006110c89190611403565b6002820160006110d89190611403565b6003820160006110e89190611403565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156111a2578082015181840152602081019050611187565b50505050905090810190601f1680156111cf5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561128957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156112c557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106113c457805160ff19168380011785556113f2565b828001600101855582156113f2579182015b828111156113f15782518255916020019190600101906113d6565b5b5090506113ff919061144b565b5090565b50805460018160011615610100020316600290046000825580601f106114295750611448565b601f016020900490600052602060002090810190611447919061144b565b5b50565b61146d91905b80821115611469576000816000905550600101611451565b5090565b905600a165627a7a723058201abb7793a8711cda335d6fcf9ed63d1182264fccf48008fc425fccd1a59963cf0029", - "deployedBytecode": "0x608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b84565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e53565b005b34801561047e57600080fd5b506104876111e3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611208565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061122e565b005b600086600080826040518082805190602001908083835b60208310151561059f578051825260208201915060208101905060208303925061057a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610734575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806106d957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061073357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b151561073f57600080fd5b896040518082805190602001908083835b6020831015156107755780518252602082019150602081019050602083039250610750565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061084f929190611383565b50604082015181600201908051906020019061086c929190611383565b506060820151816003019080519060200190610889929190611383565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610a035780820151818401526020810190506109e8565b50505050905090810190601f168015610a305780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610a69578082015181840152602081019050610a4e565b50505050905090810190601f168015610a965780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610acf578082015181840152602081019050610ab4565b50505050905090810190601f168015610afc5780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610b35578082015181840152602081019050610b1a565b50505050905090810190601f168015610b625780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040518082805190602001908083835b602083101515610bc95780518252602082019150602081019050602083039250610ba4565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cfe5780601f10610cd357610100808354040283529160200191610cfe565b820191906000526020600020905b815481529060010190602001808311610ce157829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d9a5780601f10610d6f57610100808354040283529160200191610d9a565b820191906000526020600020905b815481529060010190602001808311610d7d57829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e365780601f10610e0b57610100808354040283529160200191610e36565b820191906000526020600020905b815481529060010190602001808311610e1957829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040518082805190602001908083835b602083101515610e8f5780518252602082019150602081019050602083039250610e6a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611024575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610fc957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061102357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b151561102f57600080fd5b846040518082805190602001908083835b6020831015156110655780518252602082019150602081019050602083039250611040565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006110c89190611403565b6002820160006110d89190611403565b6003820160006110e89190611403565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156111a2578082015181840152602081019050611187565b50505050905090810190601f1680156111cf5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561128957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156112c557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106113c457805160ff19168380011785556113f2565b828001600101855582156113f2579182015b828111156113f15782518255916020019190600101906113d6565b5b5090506113ff919061144b565b5090565b50805460018160011615610100020316600290046000825580601f106114295750611448565b601f016020900490600052602060002090810190611447919061144b565b5b50565b61146d91905b80821115611469576000816000905550600101611451565b5090565b905600a165627a7a723058201abb7793a8711cda335d6fcf9ed63d1182264fccf48008fc425fccd1a59963cf0029", - "sourceMap": "168:3447:12:-;;;1712:125;8:9:-1;5:2;;;30:1;27;20:12;5:2;1712:125:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;1776:10:12;1768:5;;:18;;;;;;;;;;;;;;;;;;1814:16;1796:15;;:34;;;;;;;;;;;;;;;;;;1712:125;168:3447;;;;;;", - "deployedSourceMap": "168:3447:12:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2285:640;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2285:640:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3274:339;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3274:339:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3274:339:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3274:339:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3274:339:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2931:194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2931:194:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;716:31:12;;8:9:-1;5:2;;;30:1;27;20:12;5:2;716:31:12;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;2285:640:12;2519:10;2491:8;1468:10;1510:27;1491:8;1481:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1481:19:12;;;;;;;;;;;;;;;;1468:32;;1540:6;:10;1547:2;1540:10;;;;;;;;;;;;;;;;;1510:40;;1582:5;;;;;;;;;;;1568:19;;:10;:19;;;:119;;;;1615:1;1592:9;:19;;;;;;;;;;;;:24;;;:61;;;;1634:9;:19;;;;;;;;;;;;1620:33;;:10;:33;;;1592:61;:94;;;;1671:9;:15;;;;;;;;;;;;1657:29;;:10;:29;;;1592:94;1568:119;1560:128;;;;;;;;2542:8;2532:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2532:19:12;;;;;;;;;;;;;;;;2519:32;;2575:238;;;;;;;;;2604:2;2575:238;;;;;;;2688:13;2575:238;;;;2725:9;2575:238;;;;2758:9;2575:238;;;;2627:6;2575:238;;;;2654:6;2575:238;;;;;;2792:10;2575:238;;;;;2562:6;:10;2569:2;2562:10;;;;;;;;;;;;;;;;;:251;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2829:89;2844:8;2854:6;2862;2870:13;2885:9;2896;2907:10;2829:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2829:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2829:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2829:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2829:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2285:640;;;;;;;;;;:::o;3274:339::-;3348:7;3357;3366:6;3374;3382;3390:7;3413:27;3443:6;:27;3460:8;3450:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3450:19:12;;;;;;;;;;;;;;;;3443:27;;;;;;;;;;;;;;;;;3413:57;;3488:9;:15;;;;;;;;;;;;3505:9;:15;;;3522:9;:22;;3546:9;:18;;3566:9;:18;;3586:9;:19;;;;;;;;;;;;3480:126;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3274:339;;;;;;;;:::o;2931:194::-;3020:10;3000:8;1468:10;1510:27;1491:8;1481:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1481:19:12;;;;;;;;;;;;;;;;1468:32;;1540:6;:10;1547:2;1540:10;;;;;;;;;;;;;;;;;1510:40;;1582:5;;;;;;;;;;;1568:19;;:10;:19;;;:119;;;;1615:1;1592:9;:19;;;;;;;;;;;;:24;;;:61;;;;1634:9;:19;;;;;;;;;;;;1620:33;;:10;:33;;;1592:61;:94;;;;1671:9;:15;;;;;;;;;;;;1657:29;;:10;:29;;;1592:94;1568:119;1560:128;;;;;;;;3043:8;3033:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3033:19:12;;;;;;;;;;;;;;;;3020:32;;3069:6;:10;3076:2;3069:10;;;;;;;;;;;;;;;;;;3062:17;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3094:24;3109:8;3094:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3094:24:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2931:194;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;716:31:12:-;;;;;;;;;;;;;:::o;827:169:16:-;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;168:3447:12:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Registry.sol\";\n\ncontract Videos is Ownable {\n\n struct VideoInfo {\n bytes32 _id;\n string ipfsHashOrig; // the hash of the original file on IPFS\n string ipfsHash; // the hash of the streamable (transcoded) file on IPFS\n string ipfsData; // optional addition data about this video, stored in IPFS\n uint256 price; // price in PTI-wei\n address owner; // the owner\n address registrar; // the account that has registered this video and can update and delete the info\n }\n\n mapping (bytes32=>VideoInfo) videos;\n Registry public paratiiRegistry;\n\n event LogCreateVideo(\n string videoId,\n address owner,\n uint price,\n string ipfsHashOrig,\n string ipfsHash,\n string ipfsData,\n address registrar\n );\n\n event LogRemoveVideo(string videoId);\n\n // ???\n modifier onlyUserRegistry() {\n require(msg.sender == paratiiRegistry.getContract(\"Users\"));\n _;\n }\n\n modifier onlyRegistrarOrAvatar(string _videoId) {\n bytes32 id = keccak256(_videoId);\n VideoInfo storage videoInfo = videos[id];\n require(msg.sender == owner || (videoInfo.registrar == 0 || msg.sender == videoInfo.registrar));\n _;\n }\n modifier onlyRegistrarOrAvatarOrOwner(string _videoId) {\n bytes32 id = keccak256(_videoId);\n VideoInfo storage videoInfo = videos[id];\n require(msg.sender == owner || (videoInfo.registrar == 0 || msg.sender == videoInfo.registrar || msg.sender == videoInfo.owner));\n _;\n }\n\n constructor(Registry _paratiiRegistry) public {\n owner = msg.sender;\n paratiiRegistry = _paratiiRegistry;\n }\n\n /**\n * @dev Register a video\n * @param _videoId id of the video, can be any string\n * @param _owner the address of the owner of this video\n * @param _price the price in wei of this video\n * @param _ipfsHashOrig the hash of the original file on IPFS\n * @param _ipfsHash the hash of the streamable (transcoded) file on IPFS\n * @param _ipfsData optional additional data about this video, stored in IPFS\n **/\n\n function create(\n string _videoId,\n address _owner,\n uint256 _price,\n string _ipfsHashOrig,\n string _ipfsHash,\n string _ipfsData\n ) onlyRegistrarOrAvatarOrOwner(_videoId) public {\n\n bytes32 id = keccak256(_videoId);\n\n videos[id] = VideoInfo({\n _id: id,\n price: _price,\n owner: _owner,\n ipfsHashOrig: _ipfsHashOrig,\n ipfsHash: _ipfsHash,\n ipfsData: _ipfsData,\n registrar: msg.sender\n });\n\n emit LogCreateVideo(_videoId, _owner, _price, _ipfsHashOrig, _ipfsHash, _ipfsData, msg.sender);\n }\n\n function remove(string _videoId) public onlyRegistrarOrAvatarOrOwner(_videoId) {\n bytes32 id = keccak256(_videoId);\n delete videos[id];\n emit LogRemoveVideo(_videoId);\n }\n\n /**\n * @dev return information about video\n * @return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)\n */\n\n function get(string _videoId)\n public\n view\n returns(address, uint256, string, string, string, address)\n {\n VideoInfo storage videoInfo = videos[keccak256(_videoId)];\n return (videoInfo.owner, videoInfo.price, videoInfo.ipfsHashOrig, videoInfo.ipfsHash, videoInfo.ipfsData, videoInfo.registrar);\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", - "exportedSymbols": { - "Videos": [ - 2270 - ] - }, - "id": 2271, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1999, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:12" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2000, - "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2807, - "src": "26:59:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 2001, - "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2751, - "src": "86:55:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 2002, - "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 1097, - "src": "142:24:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2003, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "187:7:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 2004, - "nodeType": "InheritanceSpecifier", - "src": "187:7:12" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 2270, - "linearizedBaseContracts": [ - 2270, - 2806 - ], - "name": "Videos", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "Videos.VideoInfo", - "id": 2019, - "members": [ - { - "constant": false, - "id": 2006, - "name": "_id", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "229:11:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2005, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "229:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2008, - "name": "ipfsHashOrig", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "250:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2007, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "250:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2010, - "name": "ipfsHash", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "320:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2009, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "320:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2012, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "401:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2011, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "401:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2014, - "name": "price", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "485:13:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2013, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "485:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2016, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "528:13:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2015, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "528:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2018, - "name": "registrar", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "564:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2017, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "564:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "VideoInfo", - "nodeType": "StructDefinition", - "scope": 2270, - "src": "202:467:12", - "visibility": "public" - }, - { - "constant": false, - "id": 2023, - "name": "videos", - "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "675:35:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" - }, - "typeName": { - "id": 2022, - "keyType": { - "id": 2020, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "684:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "675:28:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" - }, - "valueType": { - "contractScope": null, - "id": 2021, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "693:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2025, - "name": "paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "716:31:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2024, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "716:8:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2041, - "name": "LogCreateVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 2040, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2027, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "784:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2026, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "784:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2029, - "indexed": false, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "808:13:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2028, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "808:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2031, - "indexed": false, - "name": "price", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "831:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2030, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "831:4:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2033, - "indexed": false, - "name": "ipfsHashOrig", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "851:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2032, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "851:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2035, - "indexed": false, - "name": "ipfsHash", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "880:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2034, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "880:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2037, - "indexed": false, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "905:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2036, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "905:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2039, - "indexed": false, - "name": "registrar", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "930:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2038, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "930:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "774:179:12" - }, - "src": "754:200:12" - }, - { - "anonymous": false, - "documentation": null, - "id": 2045, - "name": "LogRemoveVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 2044, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2043, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 2045, - "src": "981:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2042, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "981:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "980:16:12" - }, - "src": "960:37:12" - }, - { - "body": { - "id": 2058, - "nodeType": "Block", - "src": "1042:87:12", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2048, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1060:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2049, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1060:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "5573657273", - "id": 2052, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1102:7:12", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", - "typeString": "literal_string \"Users\"" - }, - "value": "Users" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", - "typeString": "literal_string \"Users\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2050, - "name": "paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1074:15:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1074:27:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1074:36:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1060:50:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2047, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1052:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1052:59:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2056, - "nodeType": "ExpressionStatement", - "src": "1052:59:12" - }, - { - "id": 2057, - "nodeType": "PlaceholderStatement", - "src": "1121:1:12" - } - ] - }, - "documentation": null, - "id": 2059, - "name": "onlyUserRegistry", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2046, - "nodeType": "ParameterList", - "parameters": [], - "src": "1039:2:12" - }, - "src": "1014:115:12", - "visibility": "internal" - }, - { - "body": { - "id": 2095, - "nodeType": "Block", - "src": "1183:215:12", - "statements": [ - { - "assignments": [ - 2064 - ], - "declarations": [ - { - "constant": false, - "id": 2064, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1193:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2063, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1193:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2068, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2066, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2061, - "src": "1216:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2065, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1206:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2067, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1206:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1193:32:12" - }, - { - "assignments": [ - 2070 - ], - "declarations": [ - { - "constant": false, - "id": 2070, - "name": "videoInfo", - "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1235:27:12", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - }, - "typeName": { - "contractScope": null, - "id": 2069, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1235:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2074, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2071, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1265:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2073, - "indexExpression": { - "argumentTypes": null, - "id": 2072, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2064, - "src": "1272:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1265:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1235:40:12" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2079, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2076, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1293:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2077, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1293:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2078, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1307:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1293:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2089, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2083, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2080, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1317:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2081, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1317:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2082, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1340:1:12", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1317:24:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2088, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2084, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1345:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1345:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2086, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1359:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2087, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1359:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1345:33:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1317:61:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2090, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1316:63:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1293:86:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2075, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1285:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2092, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1285:95:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2093, - "nodeType": "ExpressionStatement", - "src": "1285:95:12" - }, - { - "id": 2094, - "nodeType": "PlaceholderStatement", - "src": "1390:1:12" - } - ] - }, - "documentation": null, - "id": 2096, - "name": "onlyRegistrarOrAvatar", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2062, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2061, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1166:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2060, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1166:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1165:17:12" - }, - "src": "1135:263:12", - "visibility": "internal" - }, - { - "body": { - "id": 2138, - "nodeType": "Block", - "src": "1458:248:12", - "statements": [ - { - "assignments": [ - 2101 - ], - "declarations": [ - { - "constant": false, - "id": 2101, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1468:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2100, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1468:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2105, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2103, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2098, - "src": "1491:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2102, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1481:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2104, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1481:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1468:32:12" - }, - { - "assignments": [ - 2107 - ], - "declarations": [ - { - "constant": false, - "id": 2107, - "name": "videoInfo", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1510:27:12", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - }, - "typeName": { - "contractScope": null, - "id": 2106, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1510:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2111, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2108, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1540:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2110, - "indexExpression": { - "argumentTypes": null, - "id": 2109, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2101, - "src": "1547:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1540:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1510:40:12" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2113, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1568:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1568:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2115, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1582:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1568:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2132, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2120, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2117, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1592:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2118, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1592:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2119, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1615:1:12", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1592:24:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2121, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1620:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1620:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2123, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1634:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2124, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1634:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1620:33:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1592:61:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2127, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1657:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1657:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2129, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1671:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2130, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "1671:15:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1657:29:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1592:94:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2133, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1591:96:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1568:119:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2112, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1560:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2135, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1560:128:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2136, - "nodeType": "ExpressionStatement", - "src": "1560:128:12" - }, - { - "id": 2137, - "nodeType": "PlaceholderStatement", - "src": "1698:1:12" - } - ] - }, - "documentation": null, - "id": 2139, - "name": "onlyRegistrarOrAvatarOrOwner", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2099, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2098, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1441:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2097, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1441:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1440:17:12" - }, - "src": "1403:303:12", - "visibility": "internal" - }, - { - "body": { - "id": 2153, - "nodeType": "Block", - "src": "1758:79:12", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2144, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1768:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2145, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1776:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1776:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1768:18:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2148, - "nodeType": "ExpressionStatement", - "src": "1768:18:12" - }, - { - "expression": { - "argumentTypes": null, - "id": 2151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2149, - "name": "paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1796:15:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2150, - "name": "_paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "1814:16:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "1796:34:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2152, - "nodeType": "ExpressionStatement", - "src": "1796:34:12" - } - ] - }, - "documentation": null, - "id": 2154, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2142, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2141, - "name": "_paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 2154, - "src": "1724:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2140, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "1724:8:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1723:27:12" - }, - "payable": false, - "returnParameters": { - "id": 2143, - "nodeType": "ParameterList", - "parameters": [], - "src": "1758:0:12" - }, - "scope": 2270, - "src": "1712:125:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2204, - "nodeType": "Block", - "src": "2508:417:12", - "statements": [ - { - "assignments": [ - 2173 - ], - "declarations": [ - { - "constant": false, - "id": 2173, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2519:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2172, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2519:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2177, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2175, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2542:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2174, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2532:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2532:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2519:32:12" - }, - { - "expression": { - "argumentTypes": null, - "id": 2191, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2178, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "2562:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2180, - "indexExpression": { - "argumentTypes": null, - "id": 2179, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2569:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2562:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2182, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2604:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2183, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2627:6:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 2184, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2654:6:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2185, - "name": "_ipfsHashOrig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2688:13:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2186, - "name": "_ipfsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2725:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2187, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2758:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2188, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2792:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2792:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": null, - "id": 2181, - "name": "VideoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2019, - "src": "2575:9:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2019_storage_ptr_$", - "typeString": "type(struct Videos.VideoInfo storage pointer)" - } - }, - "id": 2190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "_id", - "price", - "owner", - "ipfsHashOrig", - "ipfsHash", - "ipfsData", - "registrar" - ], - "nodeType": "FunctionCall", - "src": "2575:238:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_memory", - "typeString": "struct Videos.VideoInfo memory" - } - }, - "src": "2562:251:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "id": 2192, - "nodeType": "ExpressionStatement", - "src": "2562:251:12" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2194, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2844:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2195, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2854:6:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2196, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2862:6:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 2197, - "name": "_ipfsHashOrig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2870:13:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2198, - "name": "_ipfsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2885:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2199, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2896:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2200, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2907:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2907:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2193, - "name": "LogCreateVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2041, - "src": "2829:14:12", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address,uint256,string memory,string memory,string memory,address)" - } - }, - "id": 2202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2829:89:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2203, - "nodeType": "EmitStatement", - "src": "2824:94:12" - } - ] - }, - "documentation": "@dev Register a video\n@param _videoId id of the video, can be any string\n@param _owner the address of the owner of this video\n@param _price the price in wei of this video\n@param _ipfsHashOrig the hash of the original file on IPFS\n@param _ipfsHash the hash of the streamable (transcoded) file on IPFS\n@param _ipfsData optional additional data about this video, stored in IPFS*", - "id": 2205, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 2169, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2491:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "id": 2170, - "modifierName": { - "argumentTypes": null, - "id": 2168, - "name": "onlyRegistrarOrAvatarOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2462:28:12", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", - "typeString": "modifier (string memory)" - } - }, - "nodeType": "ModifierInvocation", - "src": "2462:38:12" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2167, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2156, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2310:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2155, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2310:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2158, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2335:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2157, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2335:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2160, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2359:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2159, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2359:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2162, - "name": "_ipfsHashOrig", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2383:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2161, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2383:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2164, - "name": "_ipfsHash", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2413:16:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2163, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2413:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2166, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2439:16:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2165, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2439:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2300:161:12" - }, - "payable": false, - "returnParameters": { - "id": 2171, - "nodeType": "ParameterList", - "parameters": [], - "src": "2508:0:12" - }, - "scope": 2270, - "src": "2285:640:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2228, - "nodeType": "Block", - "src": "3010:115:12", - "statements": [ - { - "assignments": [ - 2214 - ], - "declarations": [ - { - "constant": false, - "id": 2214, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "3020:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2213, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3020:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2218, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2216, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3043:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2215, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3033:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2217, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3033:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3020:32:12" - }, - { - "expression": { - "argumentTypes": null, - "id": 2222, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "3062:17:12", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2219, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3069:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2221, - "indexExpression": { - "argumentTypes": null, - "id": 2220, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2214, - "src": "3076:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3069:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2223, - "nodeType": "ExpressionStatement", - "src": "3062:17:12" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2225, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3109:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2224, - "name": "LogRemoveVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2045, - "src": "3094:14:12", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 2226, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3094:24:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2227, - "nodeType": "EmitStatement", - "src": "3089:29:12" - } - ] - }, - "documentation": null, - "id": 2229, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 2210, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3000:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "id": 2211, - "modifierName": { - "argumentTypes": null, - "id": 2209, - "name": "onlyRegistrarOrAvatarOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2971:28:12", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", - "typeString": "modifier (string memory)" - } - }, - "nodeType": "ModifierInvocation", - "src": "2971:38:12" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2208, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2207, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "2947:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2206, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2947:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2946:17:12" - }, - "payable": false, - "returnParameters": { - "id": 2212, - "nodeType": "ParameterList", - "parameters": [], - "src": "3010:0:12" - }, - "scope": 2270, - "src": "2931:194:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2268, - "nodeType": "Block", - "src": "3403:210:12", - "statements": [ - { - "assignments": [ - 2247 - ], - "declarations": [ - { - "constant": false, - "id": 2247, - "name": "videoInfo", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3413:27:12", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - }, - "typeName": { - "contractScope": null, - "id": 2246, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "3413:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2253, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2248, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3443:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2252, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2250, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2231, - "src": "3460:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2249, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3450:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3450:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3443:27:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3413:57:12" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2254, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3488:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2255, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "3488:15:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2256, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3505:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2257, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "price", - "nodeType": "MemberAccess", - "referencedDeclaration": 2014, - "src": "3505:15:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2258, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3522:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2259, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsHashOrig", - "nodeType": "MemberAccess", - "referencedDeclaration": 2008, - "src": "3522:22:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2260, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3546:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2261, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsHash", - "nodeType": "MemberAccess", - "referencedDeclaration": 2010, - "src": "3546:18:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2262, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3566:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2263, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 2012, - "src": "3566:18:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2264, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3586:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2265, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "3586:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 2266, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3487:119:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_storage_$_t_string_storage_$_t_string_storage_$_t_address_$", - "typeString": "tuple(address,uint256,string storage ref,string storage ref,string storage ref,address)" - } - }, - "functionReturnParameters": 2245, - "id": 2267, - "nodeType": "Return", - "src": "3480:126:12" - } - ] - }, - "documentation": "@dev return information about video\n@return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)", - "id": 2269, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2232, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2231, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3287:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2230, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3287:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3286:17:12" - }, - "payable": false, - "returnParameters": { - "id": 2245, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2234, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3348:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2233, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3348:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2236, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3357:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2235, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3357:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2238, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3366:6:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2237, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3366:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2240, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3374:6:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2239, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3374:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2242, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3382:6:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2241, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3382:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2244, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3390:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2243, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3390:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3347:51:12" - }, - "scope": 2270, - "src": "3274:339:12", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2271, - "src": "168:3447:12" - } - ], - "src": "0:3616:12" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", - "exportedSymbols": { - "Videos": [ - 2270 - ] - }, - "id": 2271, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1999, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:12" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2000, - "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2807, - "src": "26:59:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", - "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 2001, - "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2751, - "src": "86:55:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 2002, - "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 1097, - "src": "142:24:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2003, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "187:7:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 2004, - "nodeType": "InheritanceSpecifier", - "src": "187:7:12" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 2270, - "linearizedBaseContracts": [ - 2270, - 2806 - ], - "name": "Videos", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "Videos.VideoInfo", - "id": 2019, - "members": [ - { - "constant": false, - "id": 2006, - "name": "_id", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "229:11:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2005, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "229:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2008, - "name": "ipfsHashOrig", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "250:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2007, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "250:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2010, - "name": "ipfsHash", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "320:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2009, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "320:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2012, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "401:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2011, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "401:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2014, - "name": "price", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "485:13:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2013, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "485:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2016, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "528:13:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2015, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "528:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2018, - "name": "registrar", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "564:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2017, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "564:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "VideoInfo", - "nodeType": "StructDefinition", - "scope": 2270, - "src": "202:467:12", - "visibility": "public" - }, - { - "constant": false, - "id": 2023, - "name": "videos", - "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "675:35:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" - }, - "typeName": { - "id": 2022, - "keyType": { - "id": 2020, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "684:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "675:28:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" - }, - "valueType": { - "contractScope": null, - "id": 2021, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "693:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2025, - "name": "paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "716:31:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2024, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "716:8:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2041, - "name": "LogCreateVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 2040, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2027, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "784:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2026, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "784:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2029, - "indexed": false, - "name": "owner", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "808:13:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2028, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "808:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2031, - "indexed": false, - "name": "price", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "831:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2030, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "831:4:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2033, - "indexed": false, - "name": "ipfsHashOrig", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "851:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2032, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "851:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2035, - "indexed": false, - "name": "ipfsHash", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "880:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2034, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "880:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2037, - "indexed": false, - "name": "ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "905:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2036, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "905:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2039, - "indexed": false, - "name": "registrar", - "nodeType": "VariableDeclaration", - "scope": 2041, - "src": "930:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2038, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "930:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "774:179:12" - }, - "src": "754:200:12" - }, - { - "anonymous": false, - "documentation": null, - "id": 2045, - "name": "LogRemoveVideo", - "nodeType": "EventDefinition", - "parameters": { - "id": 2044, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2043, - "indexed": false, - "name": "videoId", - "nodeType": "VariableDeclaration", - "scope": 2045, - "src": "981:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2042, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "981:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "980:16:12" - }, - "src": "960:37:12" - }, - { - "body": { - "id": 2058, - "nodeType": "Block", - "src": "1042:87:12", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2048, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1060:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2049, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1060:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "5573657273", - "id": 2052, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1102:7:12", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", - "typeString": "literal_string \"Users\"" - }, - "value": "Users" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", - "typeString": "literal_string \"Users\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2050, - "name": "paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1074:15:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1074:27:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1074:36:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1060:50:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2047, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1052:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1052:59:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2056, - "nodeType": "ExpressionStatement", - "src": "1052:59:12" - }, - { - "id": 2057, - "nodeType": "PlaceholderStatement", - "src": "1121:1:12" - } - ] - }, - "documentation": null, - "id": 2059, - "name": "onlyUserRegistry", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2046, - "nodeType": "ParameterList", - "parameters": [], - "src": "1039:2:12" - }, - "src": "1014:115:12", - "visibility": "internal" - }, - { - "body": { - "id": 2095, - "nodeType": "Block", - "src": "1183:215:12", - "statements": [ - { - "assignments": [ - 2064 - ], - "declarations": [ - { - "constant": false, - "id": 2064, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1193:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2063, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1193:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2068, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2066, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2061, - "src": "1216:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2065, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1206:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2067, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1206:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1193:32:12" - }, - { - "assignments": [ - 2070 - ], - "declarations": [ - { - "constant": false, - "id": 2070, - "name": "videoInfo", - "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1235:27:12", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - }, - "typeName": { - "contractScope": null, - "id": 2069, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1235:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2074, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2071, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1265:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2073, - "indexExpression": { - "argumentTypes": null, - "id": 2072, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2064, - "src": "1272:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1265:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1235:40:12" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2079, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2076, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1293:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2077, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1293:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2078, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1307:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1293:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2089, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2083, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2080, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1317:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2081, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1317:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2082, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1340:1:12", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1317:24:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2088, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2084, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1345:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1345:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2086, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1359:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2087, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1359:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1345:33:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1317:61:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2090, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1316:63:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1293:86:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2075, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1285:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2092, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1285:95:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2093, - "nodeType": "ExpressionStatement", - "src": "1285:95:12" - }, - { - "id": 2094, - "nodeType": "PlaceholderStatement", - "src": "1390:1:12" - } - ] - }, - "documentation": null, - "id": 2096, - "name": "onlyRegistrarOrAvatar", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2062, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2061, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1166:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2060, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1166:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1165:17:12" - }, - "src": "1135:263:12", - "visibility": "internal" - }, - { - "body": { - "id": 2138, - "nodeType": "Block", - "src": "1458:248:12", - "statements": [ - { - "assignments": [ - 2101 - ], - "declarations": [ - { - "constant": false, - "id": 2101, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1468:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2100, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1468:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2105, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2103, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2098, - "src": "1491:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2102, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1481:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2104, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1481:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1468:32:12" - }, - { - "assignments": [ - 2107 - ], - "declarations": [ - { - "constant": false, - "id": 2107, - "name": "videoInfo", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1510:27:12", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - }, - "typeName": { - "contractScope": null, - "id": 2106, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1510:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2111, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2108, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1540:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2110, - "indexExpression": { - "argumentTypes": null, - "id": 2109, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2101, - "src": "1547:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1540:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1510:40:12" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2113, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1568:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1568:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2115, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1582:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1568:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2132, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2120, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2117, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1592:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2118, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1592:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2119, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1615:1:12", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1592:24:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2121, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1620:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1620:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2123, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1634:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2124, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1634:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1620:33:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1592:61:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2127, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1657:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1657:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2129, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1671:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2130, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "1671:15:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1657:29:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1592:94:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2133, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1591:96:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1568:119:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2112, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1560:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2135, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1560:128:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2136, - "nodeType": "ExpressionStatement", - "src": "1560:128:12" - }, - { - "id": 2137, - "nodeType": "PlaceholderStatement", - "src": "1698:1:12" - } - ] - }, - "documentation": null, - "id": 2139, - "name": "onlyRegistrarOrAvatarOrOwner", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2099, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2098, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1441:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2097, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1441:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1440:17:12" - }, - "src": "1403:303:12", - "visibility": "internal" - }, - { - "body": { - "id": 2153, - "nodeType": "Block", - "src": "1758:79:12", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2144, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1768:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2145, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1776:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1776:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1768:18:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2148, - "nodeType": "ExpressionStatement", - "src": "1768:18:12" - }, - { - "expression": { - "argumentTypes": null, - "id": 2151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2149, - "name": "paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1796:15:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2150, - "name": "_paratiiRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "1814:16:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "1796:34:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2152, - "nodeType": "ExpressionStatement", - "src": "1796:34:12" - } - ] - }, - "documentation": null, - "id": 2154, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2142, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2141, - "name": "_paratiiRegistry", - "nodeType": "VariableDeclaration", - "scope": 2154, - "src": "1724:25:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2140, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "1724:8:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1723:27:12" - }, - "payable": false, - "returnParameters": { - "id": 2143, - "nodeType": "ParameterList", - "parameters": [], - "src": "1758:0:12" - }, - "scope": 2270, - "src": "1712:125:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2204, - "nodeType": "Block", - "src": "2508:417:12", - "statements": [ - { - "assignments": [ - 2173 - ], - "declarations": [ - { - "constant": false, - "id": 2173, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2519:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2172, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2519:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2177, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2175, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2542:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2174, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2532:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2532:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2519:32:12" - }, - { - "expression": { - "argumentTypes": null, - "id": 2191, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2178, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "2562:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2180, - "indexExpression": { - "argumentTypes": null, - "id": 2179, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2569:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2562:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2182, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2604:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2183, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2627:6:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 2184, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2654:6:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2185, - "name": "_ipfsHashOrig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2688:13:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2186, - "name": "_ipfsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2725:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2187, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2758:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2188, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2792:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2792:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": null, - "id": 2181, - "name": "VideoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2019, - "src": "2575:9:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2019_storage_ptr_$", - "typeString": "type(struct Videos.VideoInfo storage pointer)" - } - }, - "id": 2190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [ - "_id", - "price", - "owner", - "ipfsHashOrig", - "ipfsHash", - "ipfsData", - "registrar" - ], - "nodeType": "FunctionCall", - "src": "2575:238:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_memory", - "typeString": "struct Videos.VideoInfo memory" - } - }, - "src": "2562:251:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "id": 2192, - "nodeType": "ExpressionStatement", - "src": "2562:251:12" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2194, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2844:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2195, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2854:6:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2196, - "name": "_price", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2862:6:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 2197, - "name": "_ipfsHashOrig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2870:13:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2198, - "name": "_ipfsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2885:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2199, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2896:9:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2200, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2907:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2907:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2193, - "name": "LogCreateVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2041, - "src": "2829:14:12", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address,uint256,string memory,string memory,string memory,address)" - } - }, - "id": 2202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2829:89:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2203, - "nodeType": "EmitStatement", - "src": "2824:94:12" - } - ] - }, - "documentation": "@dev Register a video\n@param _videoId id of the video, can be any string\n@param _owner the address of the owner of this video\n@param _price the price in wei of this video\n@param _ipfsHashOrig the hash of the original file on IPFS\n@param _ipfsHash the hash of the streamable (transcoded) file on IPFS\n@param _ipfsData optional additional data about this video, stored in IPFS*", - "id": 2205, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 2169, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2491:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "id": 2170, - "modifierName": { - "argumentTypes": null, - "id": 2168, - "name": "onlyRegistrarOrAvatarOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2462:28:12", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", - "typeString": "modifier (string memory)" - } - }, - "nodeType": "ModifierInvocation", - "src": "2462:38:12" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2167, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2156, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2310:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2155, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2310:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2158, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2335:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2157, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2335:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2160, - "name": "_price", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2359:14:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2159, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2359:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2162, - "name": "_ipfsHashOrig", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2383:20:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2161, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2383:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2164, - "name": "_ipfsHash", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2413:16:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2163, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2413:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2166, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2439:16:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2165, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2439:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2300:161:12" - }, - "payable": false, - "returnParameters": { - "id": 2171, - "nodeType": "ParameterList", - "parameters": [], - "src": "2508:0:12" - }, - "scope": 2270, - "src": "2285:640:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2228, - "nodeType": "Block", - "src": "3010:115:12", - "statements": [ - { - "assignments": [ - 2214 - ], - "declarations": [ - { - "constant": false, - "id": 2214, - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "3020:10:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2213, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3020:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2218, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2216, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3043:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2215, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3033:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2217, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3033:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3020:32:12" - }, - { - "expression": { - "argumentTypes": null, - "id": 2222, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "3062:17:12", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2219, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3069:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2221, - "indexExpression": { - "argumentTypes": null, - "id": 2220, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2214, - "src": "3076:2:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3069:10:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2223, - "nodeType": "ExpressionStatement", - "src": "3062:17:12" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2225, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3109:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2224, - "name": "LogRemoveVideo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2045, - "src": "3094:14:12", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 2226, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3094:24:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2227, - "nodeType": "EmitStatement", - "src": "3089:29:12" - } - ] - }, - "documentation": null, - "id": 2229, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "id": 2210, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3000:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "id": 2211, - "modifierName": { - "argumentTypes": null, - "id": 2209, - "name": "onlyRegistrarOrAvatarOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2971:28:12", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", - "typeString": "modifier (string memory)" - } - }, - "nodeType": "ModifierInvocation", - "src": "2971:38:12" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2208, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2207, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "2947:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2206, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2947:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2946:17:12" - }, - "payable": false, - "returnParameters": { - "id": 2212, - "nodeType": "ParameterList", - "parameters": [], - "src": "3010:0:12" - }, - "scope": 2270, - "src": "2931:194:12", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2268, - "nodeType": "Block", - "src": "3403:210:12", - "statements": [ - { - "assignments": [ - 2247 - ], - "declarations": [ - { - "constant": false, - "id": 2247, - "name": "videoInfo", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3413:27:12", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - }, - "typeName": { - "contractScope": null, - "id": 2246, - "name": "VideoInfo", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "3413:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2253, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2248, - "name": "videos", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3443:6:12", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", - "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" - } - }, - "id": 2252, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2250, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2231, - "src": "3460:8:12", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2249, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3450:9:12", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3450:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3443:27:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", - "typeString": "struct Videos.VideoInfo storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3413:57:12" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2254, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3488:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2255, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "3488:15:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2256, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3505:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2257, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "price", - "nodeType": "MemberAccess", - "referencedDeclaration": 2014, - "src": "3505:15:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2258, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3522:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2259, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsHashOrig", - "nodeType": "MemberAccess", - "referencedDeclaration": 2008, - "src": "3522:22:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2260, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3546:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2261, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsHash", - "nodeType": "MemberAccess", - "referencedDeclaration": 2010, - "src": "3546:18:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2262, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3566:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2263, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 2012, - "src": "3566:18:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2264, - "name": "videoInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3586:9:12", - "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", - "typeString": "struct Videos.VideoInfo storage pointer" - } - }, - "id": 2265, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "registrar", - "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "3586:19:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 2266, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3487:119:12", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_storage_$_t_string_storage_$_t_string_storage_$_t_address_$", - "typeString": "tuple(address,uint256,string storage ref,string storage ref,string storage ref,address)" - } - }, - "functionReturnParameters": 2245, - "id": 2267, - "nodeType": "Return", - "src": "3480:126:12" - } - ] - }, - "documentation": "@dev return information about video\n@return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)", - "id": 2269, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2232, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2231, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3287:15:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2230, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3287:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3286:17:12" - }, - "payable": false, - "returnParameters": { - "id": 2245, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2234, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3348:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2233, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3348:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2236, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3357:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2235, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3357:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2238, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3366:6:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2237, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3366:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2240, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3374:6:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2239, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3374:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2242, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3382:6:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2241, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3382:6:12", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2244, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3390:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2243, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3390:7:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3347:51:12" - }, - "scope": 2270, - "src": "3274:339:12", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2271, - "src": "168:3447:12" - } - ], - "src": "0:3616:12" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.683Z" -} \ No newline at end of file +{"contractName":"Videos","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paratiiRegistry","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"ipfsHashOrig","type":"string"},{"indexed":false,"name":"ipfsHash","type":"string"},{"indexed":false,"name":"ipfsData","type":"string"},{"indexed":false,"name":"registrar","type":"address"}],"name":"LogCreateVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"LogRemoveVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_owner","type":"address"},{"name":"_price","type":"uint256"},{"name":"_ipfsHashOrig","type":"string"},{"name":"_ipfsHash","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806117bc83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506116b8806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c5c565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f97565b005b34801561047e57600080fd5b506104876113ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061144a565b005b600086600080826040516020018082805190602001908083835b6020831015156105a2578051825260208201915060208101905060208303925061057d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561060b57805182526020820191506020810190506020830392506105e6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107a0575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061074557508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061079f57508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156107ab57600080fd5b896040516020018082805190602001908083835b6020831015156107e457805182526020820191506020810190506020830392506107bf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561084d5780518252602082019150602081019050602083039250610828565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061092792919061159f565b50604082015181600201908051906020019061094492919061159f565b50606082015181600301908051906020019061096192919061159f565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610adb578082015181840152602081019050610ac0565b50505050905090810190601f168015610b085780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610b41578082015181840152602081019050610b26565b50505050905090810190601f168015610b6e5780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610ba7578082015181840152602081019050610b8c565b50505050905090810190601f168015610bd45780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610c0d578082015181840152602081019050610bf2565b50505050905090810190601f168015610c3a5780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040516020018082805190602001908083835b602083101515610ca45780518252602082019150602081019050602083039250610c7f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d0d5780518252602082019150602081019050602083039250610ce8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e425780601f10610e1757610100808354040283529160200191610e42565b820191906000526020600020905b815481529060010190602001808311610e2557829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7a5780601f10610f4f57610100808354040283529160200191610f7a565b820191906000526020600020905b815481529060010190602001808311610f5d57829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040516020018082805190602001908083835b602083101515610fd65780518252602082019150602081019050602083039250610fb1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561103f578051825260208201915060208101905060208303925061101a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111d4575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061117957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806111d357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156111df57600080fd5b846040516020018082805190602001908083835b60208310151561121857805182526020820191506020810190506020830392506111f3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611281578051825260208201915060208101905060208303925061125c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006112e4919061161f565b6002820160006112f4919061161f565b600382016000611304919061161f565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156113be5780820151818401526020810190506113a3565b50505050905090810190601f1680156113eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156114e157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115e057805160ff191683800117855561160e565b8280016001018555821561160e579182015b8281111561160d5782518255916020019190600101906115f2565b5b50905061161b9190611667565b5090565b50805460018160011615610100020316600290046000825580601f106116455750611664565b601f0160209004906000526020600020908101906116639190611667565b5b50565b61168991905b8082111561168557600081600090555060010161166d565b5090565b905600a165627a7a72305820b04ce8e73e1e7df3b862d7e872d42927df1609c28e63de2f71293dbbb042c5d80029"} \ No newline at end of file diff --git a/build/contracts/Views.json b/build/contracts/Views.json index e0c5209..d8ec08b 100644 --- a/build/contracts/Views.json +++ b/build/contracts/Views.json @@ -1,4663 +1 @@ -{ - "contractName": "Views", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "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": [ - { - "name": "_registry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_address", - "type": "address" - }, - { - "indexed": false, - "name": "_videoId", - "type": "string" - }, - { - "indexed": false, - "name": "_ipfsData", - "type": "string" - } - ], - "name": "LogCreateView", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_address", - "type": "address" - }, - { - "indexed": false, - "name": "_videoId", - "type": "string" - } - ], - "name": "LogRemoveView", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_viewer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - }, - { - "name": "_ipfsData", - "type": "string" - } - ], - "name": "create", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_viewer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "remove", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_viewer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "get", - "outputs": [ - { - "name": "", - "type": "bool" - }, - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_viewer", - "type": "address" - }, - { - "name": "_videoId", - "type": "string" - } - ], - "name": "userViewedVideo", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b5060405160208061134183398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061123d806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107c1565b005b3480156101ec57600080fd5b506101f5610ba2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610bc8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bed565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cc2565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e17565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040518082805190602001908083835b602083101515610683578051825260208201915060208101905060208303925061065e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff02191690556001820160006106eb9190611124565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610782578082015181840152602081019050610767565b50505050905090810190601f1680156107af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109435750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156108d957600080fd5b505af11580156108ed573d6000803e3d6000fd5b505050506040513d602081101561090357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561094e57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040518082805190602001908083835b6020831015156109dd57805182526020820191506020810190506020830392506109b8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610a5c92919061116c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610afa578082015181840152602081019050610adf565b50505050905090810190601f168015610b275780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b60578082015181840152602081019050610b45565b50505050905090810190601f168015610b8d5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610c665780518252602082019150602081019050602083039250610c41565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d1d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d5957600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610f9f5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610f3557600080fd5b505af1158015610f49573d6000803e3d6000fd5b505050506040513d6020811015610f5f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610faa57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040518082805190602001908083835b6020831015156110215780518252602082019150602081019050602083039250610ffc565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111115780601f106110e657610100808354040283529160200191611111565b820191906000526020600020905b8154815290600101906020018083116110f457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061114a5750611169565b601f01602090049060005260206000209081019061116891906111ec565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111ad57805160ff19168380011785556111db565b828001600101855582156111db579182015b828111156111da5782518255916020019190600101906111bf565b5b5090506111e891906111ec565b5090565b61120e91905b8082111561120a5760008160009055506001016111f2565b5090565b905600a165627a7a72305820fb00da0a34a20f30b21d45973bdf4131cf13375211fd54eea4f24dde1fea68ae0029", - "deployedBytecode": "0x608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107c1565b005b3480156101ec57600080fd5b506101f5610ba2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610bc8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bed565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cc2565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e17565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040518082805190602001908083835b602083101515610683578051825260208201915060208101905060208303925061065e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff02191690556001820160006106eb9190611124565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610782578082015181840152602081019050610767565b50505050905090810190601f1680156107af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109435750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156108d957600080fd5b505af11580156108ed573d6000803e3d6000fd5b505050506040513d602081101561090357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561094e57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040518082805190602001908083835b6020831015156109dd57805182526020820191506020810190506020830392506109b8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610a5c92919061116c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610afa578082015181840152602081019050610adf565b50505050905090810190601f168015610b275780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b60578082015181840152602081019050610b45565b50505050905090810190601f168015610b8d5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040518082805190602001908083835b602083101515610c665780518252602082019150602081019050602083039250610c41565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d1d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d5957600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610f9f5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610f3557600080fd5b505af1158015610f49573d6000803e3d6000fd5b505050506040513d6020811015610f5f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610faa57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040518082805190602001908083835b6020831015156110215780518252602082019150602081019050602083039250610ffc565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111115780601f106110e657610100808354040283529160200191611111565b820191906000526020600020905b8154815290600101906020018083116110f457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061114a5750611169565b601f01602090049060005260206000209081019061116891906111ec565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111ad57805160ff19168380011785556111db565b828001600101855582156111db579182015b828111156111da5782518255916020019190600101906111bf565b5b5090506111e891906111ec565b5090565b61120e91905b8082111561120a5760008160009055506001016111f2565b5090565b905600a165627a7a72305820fb00da0a34a20f30b21d45973bdf4131cf13375211fd54eea4f24dde1fea68ae0029", - "sourceMap": "112:1468:13:-;;;664:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;664:104:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;721:10:13;713:5;;:18;;;;;;;;;;;;;;;;;;752:9;741:8;;:20;;;;;;;;;;;;;;;;;;664:104;112:1468;;;;;;", - "deployedSourceMap": "112:1468:13:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1008:182;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1008:182:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;774:228;;8:9:-1;5:2;;;30:1;27;20:12;5:2;774:228:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;145:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;145:24:13;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;1419:159:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1419:159:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1196:217:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1196:217:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1196:217:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1008:182;583:5;;;;;;;;;;;569:19;;:10;:19;;;568:71;;;;608:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;608:30:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;608:30:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;608:30:13;;;;;;;;;;;;;;;;594:44;;:10;:44;;;568:71;560:80;;;;;;;;1100:6;:15;1107:7;1100:15;;;;;;;;;;;;;;;:36;1126:8;1116:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1116:19:13;;;;;;;;;;;;;;;;1100:36;;;;;;;;;;;;;;;;;;1093:43;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;1151:32;1165:7;1174:8;1151:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1151:32:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1008:182;;:::o;774:228::-;583:5;;;;;;;;;;;569:19;;:10;:19;;;568:71;;;;608:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;608:30:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;608:30:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;608:30:13;;;;;;;;;;;;;;;;594:44;;:10;:44;;;568:71;560:80;;;;;;;;916:21;;;;;;;;;921:4;916:21;;;;;;927:9;916:21;;;877:6;:15;884:7;877:15;;;;;;;;;;;;;;;:36;903:8;893:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;893:19:13;;;;;;;;;;;;;;;;877:36;;;;;;;;;;;;;;;;;:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;952:43;966:7;975:8;985:9;952:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;952:43:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;952:43:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;774:228;;;:::o;145:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;1419:159:13:-;1498:4;1521:6;:15;1528:7;1521:15;;;;;;;;;;;;;;;:36;1547:8;1537:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1537:19:13;;;;;;;;;;;;;;;;1521:36;;;;;;;;;;;;;;;;;:50;;;;;;;;;;;;1514:57;;1419:159;;;;:::o;827:169:16:-;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;1196:217:13:-;1281:4;1287:6;1305:9;583:5;;;;;;;;;;;569:19;;:10;:19;;;568:71;;;;608:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;608:30:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;608:30:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;608:30:13;;;;;;;;;;;;;;;;594:44;;:10;:44;;;568:71;560:80;;;;;;;;1317:6;:15;1324:7;1317:15;;;;;;;;;;;;;;;:36;1343:8;1333:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1333:19:13;;;;;;;;;;;;;;;;1317:36;;;;;;;;;;;;;;;;;1305:48;;1371:4;:18;;;;;;;;;;;;1391:4;:14;;1363:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1196:217;;;;;;:::o;112:1468::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./Registry.sol\";\n\ncontract Views is Ownable {\n\n Registry public registry;\n\n struct Data {\n bool _isRegistered;\n string _ipfsData;\n }\n\n // mapping from user addrsses and video ids to booleans\n mapping (address=> mapping (bytes32 => Data)) private _views;\n\n event LogCreateView(address _address, string _videoId, string _ipfsData);\n event LogRemoveView(address _address, string _videoId);\n\n modifier onlyOwnerOrAvatar() {\n require((msg.sender == owner) || (msg.sender == registry.getContract(\"Avatar\")));\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n function create(address _viewer, string _videoId, string _ipfsData) public onlyOwnerOrAvatar {\n _views[_viewer][keccak256(_videoId)] = Data(true, _ipfsData);\n emit LogCreateView(_viewer, _videoId, _ipfsData);\n }\n\n function remove(address _viewer, string _videoId) public onlyOwnerOrAvatar {\n delete _views[_viewer][keccak256(_videoId)];\n emit LogRemoveView(_viewer, _videoId);\n }\n\n function get(address _viewer, string _videoId) public view onlyOwnerOrAvatar returns(bool, string) {\n Data data = _views[_viewer][keccak256(_videoId)];\n return (data._isRegistered, data._ipfsData);\n }\n\n function userViewedVideo(address _viewer, string _videoId) public view returns(bool) {\n return _views[_viewer][keccak256(_videoId)]._isRegistered;\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Views.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Views.sol", - "exportedSymbols": { - "Views": [ - 2444 - ] - }, - "id": 2445, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2272, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:13" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2273, - "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 2807, - "src": "26:59:13", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 2274, - "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 1097, - "src": "86:24:13", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2275, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "130:7:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 2276, - "nodeType": "InheritanceSpecifier", - "src": "130:7:13" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 2444, - "linearizedBaseContracts": [ - 2444, - 2806 - ], - "name": "Views", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2278, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 2444, - "src": "145:24:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2277, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "145:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "canonicalName": "Views.Data", - "id": 2283, - "members": [ - { - "constant": false, - "id": 2280, - "name": "_isRegistered", - "nodeType": "VariableDeclaration", - "scope": 2283, - "src": "198:18:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2279, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "198:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2282, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2283, - "src": "226:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2281, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "226:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Data", - "nodeType": "StructDefinition", - "scope": 2444, - "src": "176:73:13", - "visibility": "public" - }, - { - "constant": false, - "id": 2289, - "name": "_views", - "nodeType": "VariableDeclaration", - "scope": 2444, - "src": "315:60:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" - }, - "typeName": { - "id": 2288, - "keyType": { - "id": 2284, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "324:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "315:45:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" - }, - "valueType": { - "id": 2287, - "keyType": { - "id": 2285, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "343:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "334:25:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data)" - }, - "valueType": { - "contractScope": null, - "id": 2286, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, - "src": "354:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": null, - "id": 2297, - "name": "LogCreateView", - "nodeType": "EventDefinition", - "parameters": { - "id": 2296, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2291, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2297, - "src": "402:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2290, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "402:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2293, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2297, - "src": "420:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2292, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "420:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2295, - "indexed": false, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2297, - "src": "437:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2294, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "437:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "401:53:13" - }, - "src": "382:73:13" - }, - { - "anonymous": false, - "documentation": null, - "id": 2303, - "name": "LogRemoveView", - "nodeType": "EventDefinition", - "parameters": { - "id": 2302, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2299, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2303, - "src": "480:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2298, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "480:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2301, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2303, - "src": "498:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2300, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "498:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "479:35:13" - }, - "src": "460:55:13" - }, - { - "body": { - "id": 2323, - "nodeType": "Block", - "src": "550:108:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2309, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2306, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "569:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "569:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2308, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "583:5:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "569:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2310, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "568:21:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2317, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2311, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "594:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2312, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "594:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "417661746172", - "id": 2315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "629:8:13", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - }, - "value": "Avatar" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2313, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2278, - "src": "608:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "608:20:13", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "608:30:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "594:44:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2318, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "593:46:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "568:71:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2305, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "560:7:13", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2320, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "560:80:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2321, - "nodeType": "ExpressionStatement", - "src": "560:80:13" - }, - { - "id": 2322, - "nodeType": "PlaceholderStatement", - "src": "650:1:13" - } - ] - }, - "documentation": null, - "id": 2324, - "name": "onlyOwnerOrAvatar", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2304, - "nodeType": "ParameterList", - "parameters": [], - "src": "547:2:13" - }, - "src": "521:137:13", - "visibility": "internal" - }, - { - "body": { - "id": 2338, - "nodeType": "Block", - "src": "703:65:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2332, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2329, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "713:5:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2330, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "721:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "721:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "713:18:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2333, - "nodeType": "ExpressionStatement", - "src": "713:18:13" - }, - { - "expression": { - "argumentTypes": null, - "id": 2336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2334, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2278, - "src": "741:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2335, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "752:9:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "741:20:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2337, - "nodeType": "ExpressionStatement", - "src": "741:20:13" - } - ] - }, - "documentation": null, - "id": 2339, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2327, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2326, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 2339, - "src": "676:18:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2325, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "676:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "675:20:13" - }, - "payable": false, - "returnParameters": { - "id": 2328, - "nodeType": "ParameterList", - "parameters": [], - "src": "703:0:13" - }, - "scope": 2444, - "src": "664:104:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2369, - "nodeType": "Block", - "src": "867:135:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2350, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "877:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2355, - "indexExpression": { - "argumentTypes": null, - "id": 2351, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2341, - "src": "884:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "877:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2356, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2353, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "903:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2352, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "893:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "893:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "877:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "74727565", - "id": 2358, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "921:4:13", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "argumentTypes": null, - "id": 2359, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "927:9:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2357, - "name": "Data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "916:4:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2283_storage_ptr_$", - "typeString": "type(struct Views.Data storage pointer)" - } - }, - "id": 2360, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "916:21:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_memory", - "typeString": "struct Views.Data memory" - } - }, - "src": "877:60:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "id": 2362, - "nodeType": "ExpressionStatement", - "src": "877:60:13" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2364, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2341, - "src": "966:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2365, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "975:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2366, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "985:9:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2363, - "name": "LogCreateView", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2297, - "src": "952:13:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 2367, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "952:43:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2368, - "nodeType": "EmitStatement", - "src": "947:48:13" - } - ] - }, - "documentation": null, - "id": 2370, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2348, - "modifierName": { - "argumentTypes": null, - "id": 2347, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "849:17:13", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "849:17:13" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2346, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2341, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2370, - "src": "790:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2340, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "790:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2343, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2370, - "src": "807:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2342, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "807:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2345, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2370, - "src": "824:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2344, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "824:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "789:52:13" - }, - "payable": false, - "returnParameters": { - "id": 2349, - "nodeType": "ParameterList", - "parameters": [], - "src": "867:0:13" - }, - "scope": 2444, - "src": "774:228:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2393, - "nodeType": "Block", - "src": "1083:107:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1093:43:13", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2379, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1100:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2381, - "indexExpression": { - "argumentTypes": null, - "id": 2380, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1107:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1100:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2385, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2383, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1126:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2382, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1116:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2384, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1116:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1100:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2387, - "nodeType": "ExpressionStatement", - "src": "1093:43:13" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2389, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1165:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2390, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1174:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2388, - "name": "LogRemoveView", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1151:13:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory)" - } - }, - "id": 2391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1151:32:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2392, - "nodeType": "EmitStatement", - "src": "1146:37:13" - } - ] - }, - "documentation": null, - "id": 2394, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2377, - "modifierName": { - "argumentTypes": null, - "id": 2376, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1065:17:13", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1065:17:13" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2375, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2372, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1024:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2371, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1024:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2374, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1041:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2373, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1041:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1023:34:13" - }, - "payable": false, - "returnParameters": { - "id": 2378, - "nodeType": "ParameterList", - "parameters": [], - "src": "1083:0:13" - }, - "scope": 2444, - "src": "1008:182:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2423, - "nodeType": "Block", - "src": "1295:118:13", - "statements": [ - { - "assignments": [ - 2408 - ], - "declarations": [ - { - "constant": false, - "id": 2408, - "name": "data", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1305:9:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data" - }, - "typeName": { - "contractScope": null, - "id": 2407, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, - "src": "1305:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2416, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2409, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1317:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2411, - "indexExpression": { - "argumentTypes": null, - "id": 2410, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2396, - "src": "1324:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1317:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2415, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2413, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2398, - "src": "1343:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2412, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1333:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1333:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1317:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1305:48:13" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2417, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1371:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data storage pointer" - } - }, - "id": 2418, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_isRegistered", - "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1371:18:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2419, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1391:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data storage pointer" - } - }, - "id": 2420, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 2282, - "src": "1391:14:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "id": 2421, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1370:36:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_string_storage_$", - "typeString": "tuple(bool,string storage ref)" - } - }, - "functionReturnParameters": 2406, - "id": 2422, - "nodeType": "Return", - "src": "1363:43:13" - } - ] - }, - "documentation": null, - "id": 2424, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [ - { - "arguments": null, - "id": 2401, - "modifierName": { - "argumentTypes": null, - "id": 2400, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1255:17:13", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1255:17:13" - } - ], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2399, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2396, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1209:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2395, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1209:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2398, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1226:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2397, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1226:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1208:34:13" - }, - "payable": false, - "returnParameters": { - "id": 2406, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2403, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1281:4:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2402, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1281:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2405, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1287:6:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2404, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1287:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1280:14:13" - }, - "scope": 2444, - "src": "1196:217:13", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2442, - "nodeType": "Block", - "src": "1504:74:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2433, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1521:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2435, - "indexExpression": { - "argumentTypes": null, - "id": 2434, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2426, - "src": "1528:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1521:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2439, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2437, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2428, - "src": "1547:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2436, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1537:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1537:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1521:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "id": 2440, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_isRegistered", - "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1521:50:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2432, - "id": 2441, - "nodeType": "Return", - "src": "1514:57:13" - } - ] - }, - "documentation": null, - "id": 2443, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userViewedVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2429, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2426, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1444:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2425, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1444:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2428, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1461:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2427, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1461:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1443:34:13" - }, - "payable": false, - "returnParameters": { - "id": 2432, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2431, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1498:4:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2430, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1498:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1497:6:13" - }, - "scope": 2444, - "src": "1419:159:13", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2445, - "src": "112:1468:13" - } - ], - "src": "0:1581:13" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Views.sol", - "exportedSymbols": { - "Views": [ - 2444 - ] - }, - "id": 2445, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2272, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:13" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2273, - "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 2807, - "src": "26:59:13", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 2274, - "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 1097, - "src": "86:24:13", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2275, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "130:7:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 2276, - "nodeType": "InheritanceSpecifier", - "src": "130:7:13" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 2444, - "linearizedBaseContracts": [ - 2444, - 2806 - ], - "name": "Views", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2278, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 2444, - "src": "145:24:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2277, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "145:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "canonicalName": "Views.Data", - "id": 2283, - "members": [ - { - "constant": false, - "id": 2280, - "name": "_isRegistered", - "nodeType": "VariableDeclaration", - "scope": 2283, - "src": "198:18:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2279, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "198:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2282, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2283, - "src": "226:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2281, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "226:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Data", - "nodeType": "StructDefinition", - "scope": 2444, - "src": "176:73:13", - "visibility": "public" - }, - { - "constant": false, - "id": 2289, - "name": "_views", - "nodeType": "VariableDeclaration", - "scope": 2444, - "src": "315:60:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" - }, - "typeName": { - "id": 2288, - "keyType": { - "id": 2284, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "324:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "315:45:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" - }, - "valueType": { - "id": 2287, - "keyType": { - "id": 2285, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "343:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "334:25:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data)" - }, - "valueType": { - "contractScope": null, - "id": 2286, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, - "src": "354:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data" - } - } - } - }, - "value": null, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": null, - "id": 2297, - "name": "LogCreateView", - "nodeType": "EventDefinition", - "parameters": { - "id": 2296, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2291, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2297, - "src": "402:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2290, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "402:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2293, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2297, - "src": "420:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2292, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "420:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2295, - "indexed": false, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2297, - "src": "437:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2294, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "437:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "401:53:13" - }, - "src": "382:73:13" - }, - { - "anonymous": false, - "documentation": null, - "id": 2303, - "name": "LogRemoveView", - "nodeType": "EventDefinition", - "parameters": { - "id": 2302, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2299, - "indexed": false, - "name": "_address", - "nodeType": "VariableDeclaration", - "scope": 2303, - "src": "480:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2298, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "480:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2301, - "indexed": false, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2303, - "src": "498:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2300, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "498:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "479:35:13" - }, - "src": "460:55:13" - }, - { - "body": { - "id": 2323, - "nodeType": "Block", - "src": "550:108:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2309, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2306, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "569:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "569:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2308, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "583:5:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "569:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2310, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "568:21:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2317, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2311, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "594:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2312, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "594:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "417661746172", - "id": 2315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "629:8:13", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - }, - "value": "Avatar" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2313, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2278, - "src": "608:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "608:20:13", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "608:30:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "594:44:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2318, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "593:46:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "568:71:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2305, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "560:7:13", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2320, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "560:80:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2321, - "nodeType": "ExpressionStatement", - "src": "560:80:13" - }, - { - "id": 2322, - "nodeType": "PlaceholderStatement", - "src": "650:1:13" - } - ] - }, - "documentation": null, - "id": 2324, - "name": "onlyOwnerOrAvatar", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2304, - "nodeType": "ParameterList", - "parameters": [], - "src": "547:2:13" - }, - "src": "521:137:13", - "visibility": "internal" - }, - { - "body": { - "id": 2338, - "nodeType": "Block", - "src": "703:65:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2332, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2329, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "713:5:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2330, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "721:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "721:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "713:18:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2333, - "nodeType": "ExpressionStatement", - "src": "713:18:13" - }, - { - "expression": { - "argumentTypes": null, - "id": 2336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2334, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2278, - "src": "741:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2335, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "752:9:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "741:20:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2337, - "nodeType": "ExpressionStatement", - "src": "741:20:13" - } - ] - }, - "documentation": null, - "id": 2339, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2327, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2326, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 2339, - "src": "676:18:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2325, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "676:8:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "675:20:13" - }, - "payable": false, - "returnParameters": { - "id": 2328, - "nodeType": "ParameterList", - "parameters": [], - "src": "703:0:13" - }, - "scope": 2444, - "src": "664:104:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2369, - "nodeType": "Block", - "src": "867:135:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2350, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "877:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2355, - "indexExpression": { - "argumentTypes": null, - "id": 2351, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2341, - "src": "884:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "877:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2356, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2353, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "903:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2352, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "893:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "893:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "877:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "74727565", - "id": 2358, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "921:4:13", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "argumentTypes": null, - "id": 2359, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "927:9:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2357, - "name": "Data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "916:4:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2283_storage_ptr_$", - "typeString": "type(struct Views.Data storage pointer)" - } - }, - "id": 2360, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "916:21:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_memory", - "typeString": "struct Views.Data memory" - } - }, - "src": "877:60:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "id": 2362, - "nodeType": "ExpressionStatement", - "src": "877:60:13" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2364, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2341, - "src": "966:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2365, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "975:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 2366, - "name": "_ipfsData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "985:9:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2363, - "name": "LogCreateView", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2297, - "src": "952:13:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 2367, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "952:43:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2368, - "nodeType": "EmitStatement", - "src": "947:48:13" - } - ] - }, - "documentation": null, - "id": 2370, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2348, - "modifierName": { - "argumentTypes": null, - "id": 2347, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "849:17:13", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "849:17:13" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2346, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2341, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2370, - "src": "790:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2340, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "790:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2343, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2370, - "src": "807:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2342, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "807:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2345, - "name": "_ipfsData", - "nodeType": "VariableDeclaration", - "scope": 2370, - "src": "824:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2344, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "824:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "789:52:13" - }, - "payable": false, - "returnParameters": { - "id": 2349, - "nodeType": "ParameterList", - "parameters": [], - "src": "867:0:13" - }, - "scope": 2444, - "src": "774:228:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2393, - "nodeType": "Block", - "src": "1083:107:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1093:43:13", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2379, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1100:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2381, - "indexExpression": { - "argumentTypes": null, - "id": 2380, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1107:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1100:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2385, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2383, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1126:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2382, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1116:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2384, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1116:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1100:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2387, - "nodeType": "ExpressionStatement", - "src": "1093:43:13" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2389, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1165:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2390, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1174:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2388, - "name": "LogRemoveView", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1151:13:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory)" - } - }, - "id": 2391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1151:32:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2392, - "nodeType": "EmitStatement", - "src": "1146:37:13" - } - ] - }, - "documentation": null, - "id": 2394, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2377, - "modifierName": { - "argumentTypes": null, - "id": 2376, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1065:17:13", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1065:17:13" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2375, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2372, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1024:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2371, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1024:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2374, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1041:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2373, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1041:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1023:34:13" - }, - "payable": false, - "returnParameters": { - "id": 2378, - "nodeType": "ParameterList", - "parameters": [], - "src": "1083:0:13" - }, - "scope": 2444, - "src": "1008:182:13", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2423, - "nodeType": "Block", - "src": "1295:118:13", - "statements": [ - { - "assignments": [ - 2408 - ], - "declarations": [ - { - "constant": false, - "id": 2408, - "name": "data", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1305:9:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data" - }, - "typeName": { - "contractScope": null, - "id": 2407, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, - "src": "1305:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2416, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2409, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1317:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2411, - "indexExpression": { - "argumentTypes": null, - "id": 2410, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2396, - "src": "1324:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1317:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2415, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2413, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2398, - "src": "1343:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2412, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1333:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1333:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1317:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1305:48:13" - }, - { - "expression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2417, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1371:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data storage pointer" - } - }, - "id": 2418, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_isRegistered", - "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1371:18:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2419, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1391:4:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", - "typeString": "struct Views.Data storage pointer" - } - }, - "id": 2420, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_ipfsData", - "nodeType": "MemberAccess", - "referencedDeclaration": 2282, - "src": "1391:14:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "id": 2421, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1370:36:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_string_storage_$", - "typeString": "tuple(bool,string storage ref)" - } - }, - "functionReturnParameters": 2406, - "id": 2422, - "nodeType": "Return", - "src": "1363:43:13" - } - ] - }, - "documentation": null, - "id": 2424, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [ - { - "arguments": null, - "id": 2401, - "modifierName": { - "argumentTypes": null, - "id": 2400, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1255:17:13", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1255:17:13" - } - ], - "name": "get", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2399, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2396, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1209:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2395, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1209:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2398, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1226:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2397, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1226:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1208:34:13" - }, - "payable": false, - "returnParameters": { - "id": 2406, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2403, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1281:4:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2402, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1281:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2405, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1287:6:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2404, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1287:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1280:14:13" - }, - "scope": 2444, - "src": "1196:217:13", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2442, - "nodeType": "Block", - "src": "1504:74:13", - "statements": [ - { - "expression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2433, - "name": "_views", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1521:6:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", - "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" - } - }, - "id": 2435, - "indexExpression": { - "argumentTypes": null, - "id": 2434, - "name": "_viewer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2426, - "src": "1528:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1521:15:13", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", - "typeString": "mapping(bytes32 => struct Views.Data storage ref)" - } - }, - "id": 2439, - "indexExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2437, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2428, - "src": "1547:8:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2436, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1537:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1537:19:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1521:36:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", - "typeString": "struct Views.Data storage ref" - } - }, - "id": 2440, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_isRegistered", - "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1521:50:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2432, - "id": 2441, - "nodeType": "Return", - "src": "1514:57:13" - } - ] - }, - "documentation": null, - "id": 2443, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "userViewedVideo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2429, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2426, - "name": "_viewer", - "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1444:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2425, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1444:7:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2428, - "name": "_videoId", - "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1461:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2427, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1461:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1443:34:13" - }, - "payable": false, - "returnParameters": { - "id": 2432, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2431, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1498:4:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2430, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1498:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1497:6:13" - }, - "scope": 2444, - "src": "1419:159:13", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2445, - "src": "112:1468:13" - } - ], - "src": "0:1581:13" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.685Z" -} \ No newline at end of file +{"contractName":"Views","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateView","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveView","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"bool"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userViewedVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806114f183398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506113ed806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082d565b005b3480156101ec57600080fd5b506101f5610c7a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610ca0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cc5565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e06565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f5b565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b6020831015156106865780518252602082019150602081019050602083039250610661565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106ef57805182526020820191506020810190506020830392506106ca565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600061075791906112d4565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109af5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d602081101561096f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ba57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040516020018082805190602001908083835b602083101515610a4c5780518252602082019150602081019050602083039250610a27565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ab55780518252602082019150602081019050602083039250610a90565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610b3492919061131c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610bd2578082015181840152602081019050610bb7565b50505050905090810190601f168015610bff5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610d415780518252602082019150602081019050602083039250610d1c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610daa5780518252602082019150602081019050602083039250610d85565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9d57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561107957600080fd5b505af115801561108d573d6000803e3d6000fd5b505050506040513d60208110156110a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156110ee57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156111685780518252602082019150602081019050602083039250611143565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112c15780601f10611296576101008083540402835291602001916112c1565b820191906000526020600020905b8154815290600101906020018083116112a457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f106112fa5750611319565b601f016020900490600052602060002090810190611318919061139c565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061135d57805160ff191683800117855561138b565b8280016001018555821561138b579182015b8281111561138a57825182559160200191906001019061136f565b5b509050611398919061139c565b5090565b6113be91905b808211156113ba5760008160009055506001016113a2565b5090565b905600a165627a7a72305820ef5a8155ef203c865740b84647bf52c4fe6a8c2be5c9618d4da7d16ff6b96d130029"} \ No newline at end of file diff --git a/build/contracts/Vouchers.json b/build/contracts/Vouchers.json index 319676d..a352980 100644 --- a/build/contracts/Vouchers.json +++ b/build/contracts/Vouchers.json @@ -1,5790 +1 @@ -{ - "contractName": "Vouchers", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "registry", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "owner", - "outputs": [ - { - "name": "", - "type": "address" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "", - "type": "bytes32" - } - ], - "name": "vouchers", - "outputs": [ - { - "name": "_claimant", - "type": "address" - }, - { - "name": "_amount", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "name": "_registry", - "type": "address" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "payable": true, - "stateMutability": "payable", - "type": "fallback" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_hashedVoucher", - "type": "bytes32" - }, - { - "indexed": false, - "name": "_amount", - "type": "uint256" - } - ], - "name": "LogCreateVoucher", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_hashedVoucher", - "type": "bytes32" - } - ], - "name": "LogRemoveVoucher", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "name": "_hashedVoucher", - "type": "bytes32" - }, - { - "indexed": false, - "name": "_voucher", - "type": "string" - }, - { - "indexed": false, - "name": "_amount", - "type": "uint256" - }, - { - "indexed": false, - "name": "_claimant", - "type": "address" - } - ], - "name": "LogRedeemVoucher", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_hashedVoucher", - "type": "bytes32" - }, - { - "name": "_amount", - "type": "uint256" - } - ], - "name": "create", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_hashedVoucher", - "type": "bytes32" - } - ], - "name": "remove", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_voucher", - "type": "string" - } - ], - "name": "hashVoucher", - "outputs": [ - { - "name": "_hashedVoucher", - "type": "bytes32" - } - ], - "payable": false, - "stateMutability": "pure", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_voucher", - "type": "string" - } - ], - "name": "redeem", - "outputs": [ - { - "name": "", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50604051602080610f5c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610e58806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506103d7565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab6107aa565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b506102026107d0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b5061027360048036038101908080356000191690602001909291905050506107f5565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a11565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610c93565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cd7565b005b6000816040518082805190602001908083835b6020831015156103a3578051825260208201915060208101905060208303925061037e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806103e68561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561041857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561047757600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b505050506040513d60208110156105c057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561067a57600080fd5b505af115801561068e573d6000803e3d6000fd5b505050506040513d60208110156106a457600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b8381101561076557808201518184015260208101905061074a565b50505050905090810190601f1680156107925780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109775750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561090d57600080fd5b505af1158015610921573d6000803e3d6000fd5b505050506040513d602081101561093757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561098257600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b935750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b2957600080fd5b505af1158015610b3d573d6000803e3d6000fd5b505050506040513d6020811015610b5357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b9e57600080fd5b600081111515610bad57600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d3257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d6e57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582065289854420d4461b6da3468691595a160a7a5ceb368868f97f1c0bae9b7352d0029", - "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506103d7565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab6107aa565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b506102026107d0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b5061027360048036038101908080356000191690602001909291905050506107f5565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a11565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610c93565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cd7565b005b6000816040518082805190602001908083835b6020831015156103a3578051825260208201915060208101905060208303925061037e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806103e68561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561041857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561047757600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b505050506040513d60208110156105c057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561067a57600080fd5b505af115801561068e573d6000803e3d6000fd5b505050506040513d60208110156106a457600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b8381101561076557808201518184015260208101905061074a565b50505050905090810190601f1680156107925780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109775750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561090d57600080fd5b505af1158015610921573d6000803e3d6000fd5b505050506040513d602081101561093757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561098257600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b935750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b2957600080fd5b505af1158015610b3d573d6000803e3d6000fd5b505050506040513d6020811015610b5357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b9e57600080fd5b600081111515610bad57600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d3257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610d6e57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582065289854420d4461b6da3468691595a160a7a5ceb368868f97f1c0bae9b7352d0029", - "sourceMap": "141:2273:14:-;;;694:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;694:104:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;751:10:14;743:5;;:18;;;;;;;;;;;;;;;;;;782:9;771:8;;:20;;;;;;;;;;;;;;;;;;694:104;141:2273;;;;;;", - "deployedSourceMap": "141:2273:14:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1359:125;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1359:125:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1686:726;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1686:726:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;177:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;177:24:14;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;1113:160:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1113:160:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;873:234;;8:9:-1;5:2;;;30:1;27;20:12;5:2;873:234:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;282:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;282:41:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1359:125:14;1417:22;1468:8;1458:19;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1458:19:14;;;;;;;;;;;;;;;;1451:26;;1359:125;;;:::o;1686:726::-;1734:4;1817:21;1872:20;2196:18;1841:21;1853:8;1841:11;:21::i;:::-;1817:45;;1895:8;:23;1904:13;1895:23;;;;;;;;;;;;;;;;;1872:46;;1954:1;1936:7;:15;;;:19;1928:28;;;;;;;;2003:1;1974:31;;:7;:17;;;;;;;;;;;;:31;;;1966:40;;;;;;;;2120:10;2084:8;:23;2093:13;2084:23;;;;;;;;;;;;;;;;;:33;;;:46;;;;;;;;;;;;;;;;;;2230:8;;;;;;;;;;;:20;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2230:36:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2230:36:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2230:36:14;;;;;;;;;;;;;;;;2196:71;;2277:5;:14;;;2292:10;2304:7;:15;;;2277:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2277:43:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2277:43:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2277:43:14;;;;;;;;;;;;;;;;;2335:70;2352:13;2367:8;2377:7;:15;;;2394:10;2335:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2335:70:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1686:726;;;;;;:::o;177:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;1113:160:14:-;613:5;;;;;;;;;;;599:19;;:10;:19;;;598:71;;;;638:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;638:30:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;638:30:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;638:30:14;;;;;;;;;;;;;;;;624:44;;:10;:44;;;598:71;590:80;;;;;;;;1195:8;:24;1204:14;1195:24;;;;;;;;;;;;;;;;;;1188:31;;;;;;;;;;;;;;;;;;;;;;;1234:32;1251:14;1234:32;;;;;;;;;;;;;;;;;;;;;;;;1113:160;:::o;873:234::-;613:5;;;;;;;;;;;599:19;;:10;:19;;;598:71;;;;638:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;638:30:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;638:30:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;638:30:14;;;;;;;;;;;;;;;;624:44;;:10;:44;;;598:71;590:80;;;;;;;;980:1;970:7;:11;962:20;;;;;;;;1019:25;;;;;;;;;1032:1;1019:25;;;;;;1036:7;1019:25;;;992:8;:24;1001:14;992:24;;;;;;;;;;;;;;;;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1059:41;1076:14;1092:7;1059:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;873:234;;:::o;282:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;827:169:16:-;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.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\n\ncontract Vouchers is Ownable {\n\n Registry public registry;\n\n struct Data {\n address _claimant;\n uint _amount;\n }\n\n mapping (bytes32 => Data) public vouchers;\n\n event LogCreateVoucher(bytes32 _hashedVoucher, uint _amount);\n event LogRemoveVoucher(bytes32 _hashedVoucher);\n event LogRedeemVoucher(bytes32 _hashedVoucher, string _voucher, uint _amount, address _claimant);\n\n modifier onlyOwnerOrAvatar() {\n require((msg.sender == owner) || (msg.sender == registry.getContract(\"Avatar\")));\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n // make this contract payable\n function() public payable { }\n\n function create(bytes32 _hashedVoucher, uint _amount) public onlyOwnerOrAvatar {\n require(_amount > 0);\n vouchers[_hashedVoucher] = Data(address(0), _amount);\n emit LogCreateVoucher(_hashedVoucher, _amount);\n }\n\n function remove(bytes32 _hashedVoucher) public onlyOwnerOrAvatar {\n delete vouchers[_hashedVoucher];\n emit LogRemoveVoucher(_hashedVoucher);\n }\n\n /* A convenience function that hashes teh voucher, to be call\"ed locally */\n function hashVoucher(string _voucher) public pure returns(bytes32 _hashedVoucher) {\n return keccak256(_voucher);\n }\n\n /*\n * redeem the Voucher\n * NOTE: This _is_ vulnerable to front-running attacks (the attacker can intercept the transaction,\n extract the voucher, and redeem it himself)\n */\n function redeem(string _voucher) public returns(bool) {\n // the voucher must exist and not have been redeemed (yet)\n bytes32 hashedVoucher = hashVoucher(_voucher);\n Data storage voucher = vouchers[hashedVoucher];\n require(voucher._amount > 0);\n require(voucher._claimant == address(0));\n // invalidate the voucher, and send the money to the sender\n vouchers[hashedVoucher]._claimant = msg.sender;\n // get the pti token contract from the registry\n ParatiiToken token = ParatiiToken(registry.getContract(\"ParatiiToken\"));\n token.transfer(msg.sender, voucher._amount);\n emit LogRedeemVoucher(hashedVoucher, _voucher, voucher._amount, msg.sender);\n }\n}\n", - "sourcePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Vouchers.sol", - "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Vouchers.sol", - "exportedSymbols": { - "Vouchers": [ - 2655 - ] - }, - "id": 2656, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2446, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:14" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2447, - "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 2807, - "src": "26:59:14", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 2448, - "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 872, - "src": "86:28:14", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 2449, - "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 1097, - "src": "115:24:14", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2450, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "162:7:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 2451, - "nodeType": "InheritanceSpecifier", - "src": "162:7:14" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 2655, - "linearizedBaseContracts": [ - 2655, - 2806 - ], - "name": "Vouchers", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2453, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 2655, - "src": "177:24:14", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2452, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "177:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "canonicalName": "Vouchers.Data", - "id": 2458, - "members": [ - { - "constant": false, - "id": 2455, - "name": "_claimant", - "nodeType": "VariableDeclaration", - "scope": 2458, - "src": "230:17:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2454, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "230:7:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2457, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2458, - "src": "257:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2456, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "257:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Data", - "nodeType": "StructDefinition", - "scope": 2655, - "src": "208:68:14", - "visibility": "public" - }, - { - "constant": false, - "id": 2462, - "name": "vouchers", - "nodeType": "VariableDeclaration", - "scope": 2655, - "src": "282:41:14", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data)" - }, - "typeName": { - "id": 2461, - "keyType": { - "id": 2459, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "291:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "282:25:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data)" - }, - "valueType": { - "contractScope": null, - "id": 2460, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, - "src": "302:4:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2468, - "name": "LogCreateVoucher", - "nodeType": "EventDefinition", - "parameters": { - "id": 2467, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2464, - "indexed": false, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2468, - "src": "353:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2463, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "353:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2466, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2468, - "src": "377:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2465, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "377:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "352:38:14" - }, - "src": "330:61:14" - }, - { - "anonymous": false, - "documentation": null, - "id": 2472, - "name": "LogRemoveVoucher", - "nodeType": "EventDefinition", - "parameters": { - "id": 2471, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2470, - "indexed": false, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2472, - "src": "419:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2469, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "419:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "418:24:14" - }, - "src": "396:47:14" - }, - { - "anonymous": false, - "documentation": null, - "id": 2482, - "name": "LogRedeemVoucher", - "nodeType": "EventDefinition", - "parameters": { - "id": 2481, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2474, - "indexed": false, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "471:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2473, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "471:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2476, - "indexed": false, - "name": "_voucher", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "495:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2475, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "495:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2478, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "512:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2477, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "512:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2480, - "indexed": false, - "name": "_claimant", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "526:17:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2479, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "526:7:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "470:74:14" - }, - "src": "448:97:14" - }, - { - "body": { - "id": 2502, - "nodeType": "Block", - "src": "580:108:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2498, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2488, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2485, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "599:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "599:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2487, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "613:5:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "599:19:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2489, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "598:21:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2490, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "624:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "624:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "417661746172", - "id": 2494, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "659:8:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - }, - "value": "Avatar" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2492, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "638:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "638:20:14", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "638:30:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "624:44:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2497, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "623:46:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "598:71:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2484, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "590:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "590:80:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2500, - "nodeType": "ExpressionStatement", - "src": "590:80:14" - }, - { - "id": 2501, - "nodeType": "PlaceholderStatement", - "src": "680:1:14" - } - ] - }, - "documentation": null, - "id": 2503, - "name": "onlyOwnerOrAvatar", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2483, - "nodeType": "ParameterList", - "parameters": [], - "src": "577:2:14" - }, - "src": "551:137:14", - "visibility": "internal" - }, - { - "body": { - "id": 2517, - "nodeType": "Block", - "src": "733:65:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2511, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2508, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "743:5:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2509, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "751:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2510, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "751:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "743:18:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2512, - "nodeType": "ExpressionStatement", - "src": "743:18:14" - }, - { - "expression": { - "argumentTypes": null, - "id": 2515, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2513, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "771:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2514, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2505, - "src": "782:9:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "771:20:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2516, - "nodeType": "ExpressionStatement", - "src": "771:20:14" - } - ] - }, - "documentation": null, - "id": 2518, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2506, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2505, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 2518, - "src": "706:18:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2504, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "706:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "705:20:14" - }, - "payable": false, - "returnParameters": { - "id": 2507, - "nodeType": "ParameterList", - "parameters": [], - "src": "733:0:14" - }, - "scope": 2655, - "src": "694:104:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2521, - "nodeType": "Block", - "src": "864:3:14", - "statements": [] - }, - "documentation": null, - "id": 2522, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2519, - "nodeType": "ParameterList", - "parameters": [], - "src": "846:2:14" - }, - "payable": true, - "returnParameters": { - "id": 2520, - "nodeType": "ParameterList", - "parameters": [], - "src": "864:0:14" - }, - "scope": 2655, - "src": "838:29:14", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2553, - "nodeType": "Block", - "src": "952:155:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2532, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2526, - "src": "970:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2533, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "980:1:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "970:11:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2531, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "962:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2535, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "962:20:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2536, - "nodeType": "ExpressionStatement", - "src": "962:20:14" - }, - { - "expression": { - "argumentTypes": null, - "id": 2546, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2537, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "992:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2539, - "indexExpression": { - "argumentTypes": null, - "id": 2538, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2524, - "src": "1001:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "992:24:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2542, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1032:1:14", - "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": 2541, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1024:7:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2543, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1024:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2544, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2526, - "src": "1036:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2540, - "name": "Data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2458, - "src": "1019:4:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2458_storage_ptr_$", - "typeString": "type(struct Vouchers.Data storage pointer)" - } - }, - "id": 2545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1019:25:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_memory", - "typeString": "struct Vouchers.Data memory" - } - }, - "src": "992:52:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "id": 2547, - "nodeType": "ExpressionStatement", - "src": "992:52:14" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2549, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2524, - "src": "1076:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2550, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2526, - "src": "1092:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2548, - "name": "LogCreateVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2468, - "src": "1059:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", - "typeString": "function (bytes32,uint256)" - } - }, - "id": 2551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1059:41:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2552, - "nodeType": "EmitStatement", - "src": "1054:46:14" - } - ] - }, - "documentation": null, - "id": 2554, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2529, - "modifierName": { - "argumentTypes": null, - "id": 2528, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2503, - "src": "934:17:14", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "934:17:14" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2527, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2524, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2554, - "src": "889:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2523, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "889:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2526, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2554, - "src": "913:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2525, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "913:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "888:38:14" - }, - "payable": false, - "returnParameters": { - "id": 2530, - "nodeType": "ParameterList", - "parameters": [], - "src": "952:0:14" - }, - "scope": 2655, - "src": "873:234:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2570, - "nodeType": "Block", - "src": "1178:95:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2564, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1188:31:14", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2561, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "1195:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2563, - "indexExpression": { - "argumentTypes": null, - "id": 2562, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "1204:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1195:24:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2565, - "nodeType": "ExpressionStatement", - "src": "1188:31:14" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2567, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "1251:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 2566, - "name": "LogRemoveVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2472, - "src": "1234:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", - "typeString": "function (bytes32)" - } - }, - "id": 2568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1234:32:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2569, - "nodeType": "EmitStatement", - "src": "1229:37:14" - } - ] - }, - "documentation": null, - "id": 2571, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2559, - "modifierName": { - "argumentTypes": null, - "id": 2558, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2503, - "src": "1160:17:14", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1160:17:14" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2557, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2556, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2571, - "src": "1129:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2555, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1129:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1128:24:14" - }, - "payable": false, - "returnParameters": { - "id": 2560, - "nodeType": "ParameterList", - "parameters": [], - "src": "1178:0:14" - }, - "scope": 2655, - "src": "1113:160:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2582, - "nodeType": "Block", - "src": "1441:43:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2579, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1468:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2578, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1458:9:14", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1458:19:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 2577, - "id": 2581, - "nodeType": "Return", - "src": "1451:26:14" - } - ] - }, - "documentation": null, - "id": 2583, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "hashVoucher", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2574, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2573, - "name": "_voucher", - "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1380:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2572, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1380:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1379:17:14" - }, - "payable": false, - "returnParameters": { - "id": 2577, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2576, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1417:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2575, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1417:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1416:24:14" - }, - "scope": 2655, - "src": "1359:125:14", - "stateMutability": "pure", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2653, - "nodeType": "Block", - "src": "1740:672:14", - "statements": [ - { - "assignments": [ - 2591 - ], - "declarations": [ - { - "constant": false, - "id": 2591, - "name": "hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1817:21:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2590, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1817:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2595, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2593, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "1853:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2592, - "name": "hashVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2583, - "src": "1841:11:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (string memory) pure returns (bytes32)" - } - }, - "id": 2594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1841:21:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1817:45:14" - }, - { - "assignments": [ - 2597 - ], - "declarations": [ - { - "constant": false, - "id": 2597, - "name": "voucher", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1872:20:14", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data" - }, - "typeName": { - "contractScope": null, - "id": 2596, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, - "src": "1872:4:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2601, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2598, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "1895:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2600, - "indexExpression": { - "argumentTypes": null, - "id": 2599, - "name": "hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "1904:13:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1895:23:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1872:46:14" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2603, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1936:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2604, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "1936:15:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1954:1:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1936:19:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2602, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1928:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2607, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1928:28:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2608, - "nodeType": "ExpressionStatement", - "src": "1928:28:14" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2610, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1974:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2611, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_claimant", - "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "1974:17:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2613, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2003:1:14", - "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": 2612, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1995:7:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1995:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1974:31:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2609, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1966:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1966:40:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2617, - "nodeType": "ExpressionStatement", - "src": "1966:40:14" - }, - { - "expression": { - "argumentTypes": null, - "id": 2624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2618, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "2084:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2620, - "indexExpression": { - "argumentTypes": null, - "id": 2619, - "name": "hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2093:13:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2084:23:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "id": 2621, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_claimant", - "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "2084:33:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2622, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2120:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2120:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2084:46:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2625, - "nodeType": "ExpressionStatement", - "src": "2084:46:14" - }, - { - "assignments": [ - 2627 - ], - "declarations": [ - { - "constant": false, - "id": 2627, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "2196:18:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 2626, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "2196:12:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2634, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", - "id": 2631, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2251:14:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2629, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "2230:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2630, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "2230:20:14", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2230:36:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2628, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "2217:12:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 2633, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2217:50:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2196:71:14" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2638, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2292:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2639, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2292:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2640, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2304:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2641, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2304:15:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 2635, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2627, - "src": "2277:5:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 2637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "2277:14:14", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 2642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2277:43:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2643, - "nodeType": "ExpressionStatement", - "src": "2277:43:14" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2645, - "name": "hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2352:13:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2646, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "2367:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2647, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2377:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2648, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2377:15:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2649, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2394:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2650, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2394:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2644, - "name": "LogRedeemVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2482, - "src": "2335:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$_t_address_$returns$__$", - "typeString": "function (bytes32,string memory,uint256,address)" - } - }, - "id": 2651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2335:70:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2652, - "nodeType": "EmitStatement", - "src": "2330:75:14" - } - ] - }, - "documentation": null, - "id": 2654, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "redeem", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2586, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2585, - "name": "_voucher", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1702:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2584, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1702:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1701:17:14" - }, - "payable": false, - "returnParameters": { - "id": 2589, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2588, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1734:4:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2587, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1734:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1733:6:14" - }, - "scope": 2655, - "src": "1686:726:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2656, - "src": "141:2273:14" - } - ], - "src": "0:2415:14" - }, - "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Vouchers.sol", - "exportedSymbols": { - "Vouchers": [ - 2655 - ] - }, - "id": 2656, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2446, - "literals": [ - "solidity", - "^", - "0.4", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "0:24:14" - }, - { - "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2447, - "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 2807, - "src": "26:59:14", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", - "file": "./ParatiiToken.sol", - "id": 2448, - "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 872, - "src": "86:28:14", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", - "file": "./Registry.sol", - "id": 2449, - "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 1097, - "src": "115:24:14", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 2450, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, - "src": "162:7:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", - "typeString": "contract Ownable" - } - }, - "id": 2451, - "nodeType": "InheritanceSpecifier", - "src": "162:7:14" - } - ], - "contractDependencies": [ - 2806 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 2655, - "linearizedBaseContracts": [ - 2655, - 2806 - ], - "name": "Vouchers", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 2453, - "name": "registry", - "nodeType": "VariableDeclaration", - "scope": 2655, - "src": "177:24:14", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2452, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "177:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "public" - }, - { - "canonicalName": "Vouchers.Data", - "id": 2458, - "members": [ - { - "constant": false, - "id": 2455, - "name": "_claimant", - "nodeType": "VariableDeclaration", - "scope": 2458, - "src": "230:17:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2454, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "230:7:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2457, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2458, - "src": "257:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2456, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "257:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Data", - "nodeType": "StructDefinition", - "scope": 2655, - "src": "208:68:14", - "visibility": "public" - }, - { - "constant": false, - "id": 2462, - "name": "vouchers", - "nodeType": "VariableDeclaration", - "scope": 2655, - "src": "282:41:14", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data)" - }, - "typeName": { - "id": 2461, - "keyType": { - "id": 2459, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "291:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "282:25:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data)" - }, - "valueType": { - "contractScope": null, - "id": 2460, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, - "src": "302:4:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 2468, - "name": "LogCreateVoucher", - "nodeType": "EventDefinition", - "parameters": { - "id": 2467, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2464, - "indexed": false, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2468, - "src": "353:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2463, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "353:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2466, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2468, - "src": "377:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2465, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "377:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "352:38:14" - }, - "src": "330:61:14" - }, - { - "anonymous": false, - "documentation": null, - "id": 2472, - "name": "LogRemoveVoucher", - "nodeType": "EventDefinition", - "parameters": { - "id": 2471, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2470, - "indexed": false, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2472, - "src": "419:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2469, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "419:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "418:24:14" - }, - "src": "396:47:14" - }, - { - "anonymous": false, - "documentation": null, - "id": 2482, - "name": "LogRedeemVoucher", - "nodeType": "EventDefinition", - "parameters": { - "id": 2481, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2474, - "indexed": false, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "471:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2473, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "471:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2476, - "indexed": false, - "name": "_voucher", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "495:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2475, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "495:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2478, - "indexed": false, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "512:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2477, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "512:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2480, - "indexed": false, - "name": "_claimant", - "nodeType": "VariableDeclaration", - "scope": 2482, - "src": "526:17:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2479, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "526:7:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "470:74:14" - }, - "src": "448:97:14" - }, - { - "body": { - "id": 2502, - "nodeType": "Block", - "src": "580:108:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2498, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2488, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2485, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "599:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "599:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 2487, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "613:5:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "599:19:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2489, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "598:21:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "argumentTypes": null, - "components": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2490, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "624:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "624:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "417661746172", - "id": 2494, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "659:8:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - }, - "value": "Avatar" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", - "typeString": "literal_string \"Avatar\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2492, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "638:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "638:20:14", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "638:30:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "624:44:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2497, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "623:46:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "598:71:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2484, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "590:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "590:80:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2500, - "nodeType": "ExpressionStatement", - "src": "590:80:14" - }, - { - "id": 2501, - "nodeType": "PlaceholderStatement", - "src": "680:1:14" - } - ] - }, - "documentation": null, - "id": 2503, - "name": "onlyOwnerOrAvatar", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2483, - "nodeType": "ParameterList", - "parameters": [], - "src": "577:2:14" - }, - "src": "551:137:14", - "visibility": "internal" - }, - { - "body": { - "id": 2517, - "nodeType": "Block", - "src": "733:65:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2511, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2508, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "743:5:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2509, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "751:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2510, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "751:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "743:18:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2512, - "nodeType": "ExpressionStatement", - "src": "743:18:14" - }, - { - "expression": { - "argumentTypes": null, - "id": 2515, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 2513, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "771:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 2514, - "name": "_registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2505, - "src": "782:9:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "src": "771:20:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2516, - "nodeType": "ExpressionStatement", - "src": "771:20:14" - } - ] - }, - "documentation": null, - "id": 2518, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2506, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2505, - "name": "_registry", - "nodeType": "VariableDeclaration", - "scope": 2518, - "src": "706:18:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - }, - "typeName": { - "contractScope": null, - "id": 2504, - "name": "Registry", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "706:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "705:20:14" - }, - "payable": false, - "returnParameters": { - "id": 2507, - "nodeType": "ParameterList", - "parameters": [], - "src": "733:0:14" - }, - "scope": 2655, - "src": "694:104:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2521, - "nodeType": "Block", - "src": "864:3:14", - "statements": [] - }, - "documentation": null, - "id": 2522, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2519, - "nodeType": "ParameterList", - "parameters": [], - "src": "846:2:14" - }, - "payable": true, - "returnParameters": { - "id": 2520, - "nodeType": "ParameterList", - "parameters": [], - "src": "864:0:14" - }, - "scope": 2655, - "src": "838:29:14", - "stateMutability": "payable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2553, - "nodeType": "Block", - "src": "952:155:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 2532, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2526, - "src": "970:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2533, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "980:1:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "970:11:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2531, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "962:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2535, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "962:20:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2536, - "nodeType": "ExpressionStatement", - "src": "962:20:14" - }, - { - "expression": { - "argumentTypes": null, - "id": 2546, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2537, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "992:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2539, - "indexExpression": { - "argumentTypes": null, - "id": 2538, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2524, - "src": "1001:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "992:24:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2542, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1032:1:14", - "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": 2541, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1024:7:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2543, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1024:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 2544, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2526, - "src": "1036:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2540, - "name": "Data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2458, - "src": "1019:4:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2458_storage_ptr_$", - "typeString": "type(struct Vouchers.Data storage pointer)" - } - }, - "id": 2545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1019:25:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_memory", - "typeString": "struct Vouchers.Data memory" - } - }, - "src": "992:52:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "id": 2547, - "nodeType": "ExpressionStatement", - "src": "992:52:14" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2549, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2524, - "src": "1076:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2550, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2526, - "src": "1092:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2548, - "name": "LogCreateVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2468, - "src": "1059:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", - "typeString": "function (bytes32,uint256)" - } - }, - "id": 2551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1059:41:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2552, - "nodeType": "EmitStatement", - "src": "1054:46:14" - } - ] - }, - "documentation": null, - "id": 2554, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2529, - "modifierName": { - "argumentTypes": null, - "id": 2528, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2503, - "src": "934:17:14", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "934:17:14" - } - ], - "name": "create", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2527, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2524, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2554, - "src": "889:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2523, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "889:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 2526, - "name": "_amount", - "nodeType": "VariableDeclaration", - "scope": 2554, - "src": "913:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2525, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "913:4:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "888:38:14" - }, - "payable": false, - "returnParameters": { - "id": 2530, - "nodeType": "ParameterList", - "parameters": [], - "src": "952:0:14" - }, - "scope": 2655, - "src": "873:234:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2570, - "nodeType": "Block", - "src": "1178:95:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 2564, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1188:31:14", - "subExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2561, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "1195:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2563, - "indexExpression": { - "argumentTypes": null, - "id": 2562, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "1204:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1195:24:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2565, - "nodeType": "ExpressionStatement", - "src": "1188:31:14" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2567, - "name": "_hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "1251:14:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 2566, - "name": "LogRemoveVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2472, - "src": "1234:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", - "typeString": "function (bytes32)" - } - }, - "id": 2568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1234:32:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2569, - "nodeType": "EmitStatement", - "src": "1229:37:14" - } - ] - }, - "documentation": null, - "id": 2571, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [ - { - "arguments": null, - "id": 2559, - "modifierName": { - "argumentTypes": null, - "id": 2558, - "name": "onlyOwnerOrAvatar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2503, - "src": "1160:17:14", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1160:17:14" - } - ], - "name": "remove", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2557, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2556, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2571, - "src": "1129:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2555, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1129:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1128:24:14" - }, - "payable": false, - "returnParameters": { - "id": 2560, - "nodeType": "ParameterList", - "parameters": [], - "src": "1178:0:14" - }, - "scope": 2655, - "src": "1113:160:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2582, - "nodeType": "Block", - "src": "1441:43:14", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2579, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1468:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2578, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1458:9:14", - "typeDescriptions": { - "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" - } - }, - "id": 2580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1458:19:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 2577, - "id": 2581, - "nodeType": "Return", - "src": "1451:26:14" - } - ] - }, - "documentation": null, - "id": 2583, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "hashVoucher", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2574, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2573, - "name": "_voucher", - "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1380:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2572, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1380:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1379:17:14" - }, - "payable": false, - "returnParameters": { - "id": 2577, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2576, - "name": "_hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1417:22:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2575, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1417:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1416:24:14" - }, - "scope": 2655, - "src": "1359:125:14", - "stateMutability": "pure", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 2653, - "nodeType": "Block", - "src": "1740:672:14", - "statements": [ - { - "assignments": [ - 2591 - ], - "declarations": [ - { - "constant": false, - "id": 2591, - "name": "hashedVoucher", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1817:21:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2590, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1817:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2595, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2593, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "1853:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2592, - "name": "hashVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2583, - "src": "1841:11:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (string memory) pure returns (bytes32)" - } - }, - "id": 2594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1841:21:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1817:45:14" - }, - { - "assignments": [ - 2597 - ], - "declarations": [ - { - "constant": false, - "id": 2597, - "name": "voucher", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1872:20:14", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data" - }, - "typeName": { - "contractScope": null, - "id": 2596, - "name": "Data", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, - "src": "1872:4:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2601, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2598, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "1895:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2600, - "indexExpression": { - "argumentTypes": null, - "id": 2599, - "name": "hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "1904:13:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1895:23:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1872:46:14" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2603, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1936:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2604, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "1936:15:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "30", - "id": 2605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1954:1:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1936:19:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2602, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1928:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2607, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1928:28:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2608, - "nodeType": "ExpressionStatement", - "src": "1928:28:14" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2610, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1974:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2611, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_claimant", - "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "1974:17:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "30", - "id": 2613, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2003:1:14", - "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": 2612, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1995:7:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": "address" - }, - "id": 2614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1995:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1974:31:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2609, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3204, - 3205 - ], - "referencedDeclaration": 3204, - "src": "1966:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 2616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1966:40:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2617, - "nodeType": "ExpressionStatement", - "src": "1966:40:14" - }, - { - "expression": { - "argumentTypes": null, - "id": 2624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 2618, - "name": "vouchers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "2084:8:14", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", - "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" - } - }, - "id": 2620, - "indexExpression": { - "argumentTypes": null, - "id": 2619, - "name": "hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2093:13:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2084:23:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", - "typeString": "struct Vouchers.Data storage ref" - } - }, - "id": 2621, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_claimant", - "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "2084:33:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2622, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2120:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2120:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2084:46:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2625, - "nodeType": "ExpressionStatement", - "src": "2084:46:14" - }, - { - "assignments": [ - 2627 - ], - "declarations": [ - { - "constant": false, - "id": 2627, - "name": "token", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "2196:18:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - }, - "typeName": { - "contractScope": null, - "id": 2626, - "name": "ParatiiToken", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "2196:12:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 2634, - "initialValue": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", - "id": 2631, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2251:14:14", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - } - ], - "expression": { - "argumentTypes": null, - "id": 2629, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "2230:8:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" - } - }, - "id": 2630, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "2230:20:14", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" - } - }, - "id": 2632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2230:36:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2628, - "name": "ParatiiToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "2217:12:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", - "typeString": "type(contract ParatiiToken)" - } - }, - "id": 2633, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2217:50:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2196:71:14" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2638, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2292:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2639, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2292:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2640, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2304:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2641, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2304:15:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "argumentTypes": null, - "id": 2635, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2627, - "src": "2277:5:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" - } - }, - "id": 2637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "2277:14:14", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 2642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2277:43:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2643, - "nodeType": "ExpressionStatement", - "src": "2277:43:14" - }, - { - "eventCall": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 2645, - "name": "hashedVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2352:13:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2646, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "2367:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2647, - "name": "voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2377:7:14", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", - "typeString": "struct Vouchers.Data storage pointer" - } - }, - "id": 2648, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2377:15:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 2649, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2394:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2650, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2394:10:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2644, - "name": "LogRedeemVoucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2482, - "src": "2335:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$_t_address_$returns$__$", - "typeString": "function (bytes32,string memory,uint256,address)" - } - }, - "id": 2651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2335:70:14", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2652, - "nodeType": "EmitStatement", - "src": "2330:75:14" - } - ] - }, - "documentation": null, - "id": 2654, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "redeem", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2586, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2585, - "name": "_voucher", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1702:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2584, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1702:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1701:17:14" - }, - "payable": false, - "returnParameters": { - "id": 2589, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2588, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1734:4:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2587, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1734:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1733:6:14" - }, - "scope": 2655, - "src": "1686:726:14", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 2656, - "src": "141:2273:14" - } - ], - "src": "0:2415:14" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.686Z" -} \ No newline at end of file +{"contractName":"Vouchers","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"vouchers","outputs":[{"name":"_claimant","type":"address"},{"name":"_amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"LogCreateVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"}],"name":"LogRemoveVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_voucher","type":"string"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_claimant","type":"address"}],"name":"LogRedeemVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_voucher","type":"string"}],"name":"hashVoucher","outputs":[{"name":"_hashedVoucher","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_voucher","type":"string"}],"name":"redeem","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610fc883398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ec4806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610443565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610816565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b5061020261083c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b506102736004803603810190808035600019169060200190929190505050610861565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a7d565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610cff565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d43565b005b6000816040516020018082805190602001908083835b6020831015156103a65780518252602082019150602081019050602083039250610381565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040f57805182526020820191506020810190506020830392506103ea565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806104528561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561048457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156104e357600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561060257600080fd5b505af1158015610616573d6000803e3d6000fd5b505050506040513d602081101561062c57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106e657600080fd5b505af11580156106fa573d6000803e3d6000fd5b505050506040513d602081101561071057600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050506040513d60208110156109a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ee57600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610bff5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d6020811015610bbf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c0a57600080fd5b600081111515610c1957600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dda57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820f93bd594bd0d4704e749edce41557c0bdb611b9c4975f525bdd3c0b2992bd9540029"} \ No newline at end of file diff --git a/contracts/Migrations.sol b/contracts/Migrations.sol index 608bba8..3e6af5a 100644 --- a/contracts/Migrations.sol +++ b/contracts/Migrations.sol @@ -1,22 +1,22 @@ pragma solidity ^0.4.0; contract Migrations { - address public owner; - uint public last_completed_migration; + address public owner; + uint public last_completed_migration; - modifier restricted() { - if (msg.sender == owner) _; - } + modifier restricted() { + if (msg.sender == owner) _; + } - function Migrations() { - owner = msg.sender; - } + constructor() public { + owner = msg.sender; + } - function setCompleted(uint completed) restricted { - last_completed_migration = completed; - } + function setCompleted(uint completed) public restricted { + last_completed_migration = completed; + } - function upgrade(address new_address) restricted { - Migrations upgraded = Migrations(new_address); - upgraded.setCompleted(last_completed_migration); - } + function upgrade(address new_address) public restricted{ + Migrations upgraded = Migrations(new_address); + upgraded.setCompleted(last_completed_migration); + } } diff --git a/contracts/paratii/Likes.sol b/contracts/paratii/Likes.sol index c070116..0dce18e 100644 --- a/contracts/paratii/Likes.sol +++ b/contracts/paratii/Likes.sol @@ -26,7 +26,7 @@ contract Likes is Ownable { function likeVideo(string _videoId, bool _liked) public { address _address = msg.sender; - bytes32 _videoHash = keccak256(_videoId); + bytes32 _videoHash = keccak256(abi.encodePacked(_videoId)); bool _userLikesVideo = userLikesVideo(_address, _videoId); bool _userDislikesVideo = userDislikesVideo(_address, _videoId); @@ -84,18 +84,18 @@ contract Likes is Ownable { } function vidLikes(string _videoId) public view returns(uint) { - return _vidLikes[keccak256(_videoId)]; + return _vidLikes[keccak256(abi.encodePacked(_videoId))]; } function vidDislikes(string _videoId) public view returns(uint) { - return _vidDislikes[keccak256(_videoId)]; + return _vidDislikes[keccak256(abi.encodePacked(_videoId))]; } function userLikesVideo(address _address, string _videoId) public view returns(bool) { - return _likes[_address][keccak256(_videoId)]; + return _likes[_address][keccak256(abi.encodePacked(_videoId))]; } function userDislikesVideo(address _address, string _videoId) public view returns(bool) { - return _dislikes[_address][keccak256(_videoId)]; + return _dislikes[_address][keccak256(abi.encodePacked(_videoId))]; } } diff --git a/contracts/paratii/PTIDistributor.sol b/contracts/paratii/PTIDistributor.sol index 0fa4455..cf4cb6a 100644 --- a/contracts/paratii/PTIDistributor.sol +++ b/contracts/paratii/PTIDistributor.sol @@ -22,9 +22,9 @@ contract PTIDistributor is Ownable { function distribute(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public { - bytes32 message = keccak256(_toAddress, _amount, _salt, _reason); + bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); bytes memory prefix = "\x19Ethereum Signed Message:\n32"; - bytes32 prefixedHash = keccak256(prefix, message); + bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, message)); require(!isUsed[_salt] && ecrecover(prefixedHash, _v, _r, _s) == owner); isUsed[_salt] = true; ParatiiToken token = ParatiiToken(registry.getContract("ParatiiToken")); @@ -33,19 +33,19 @@ contract PTIDistributor is Ownable { } function checkOwnerPacked(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public { - bytes32 message = keccak256(_toAddress, _amount, _salt, _reason); + bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); bytes memory prefix = "\x19Ethereum Signed Message:\n32"; - bytes32 prefixedHash = keccak256(prefix, message); + bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, message)); emit LogDebugOwner(ecrecover(prefixedHash, _v, _r, _s)); } - function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) public view returns (address) { + function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) public pure returns (address) { bytes memory prefix = "\x19Ethereum Signed Message:\n32"; - bytes32 prefixedHash = keccak256(prefix, _hash); + bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, _hash)); return ecrecover(prefixedHash, _v, _r, _s); } function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) public { - bytes32 hashing = keccak256(_toAddress, _amount, _salt, _reason); + bytes32 hashing = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); emit LogDebug(hashing); } } diff --git a/contracts/paratii/Registry.sol b/contracts/paratii/Registry.sol index 3f84252..ab27fd7 100644 --- a/contracts/paratii/Registry.sol +++ b/contracts/paratii/Registry.sol @@ -24,44 +24,44 @@ contract Registry is Ownable { } function registerAddress(string _name, address _address) public onlyOwner { - contracts[keccak256(_name)] = _address; + contracts[keccak256(abi.encodePacked(_name))] = _address; emit LogRegisterAddress(_name, _address); } function unregisterAddress(string _name) public onlyOwner { - delete contracts[keccak256(_name)]; + delete contracts[keccak256(abi.encodePacked(_name))]; emit LogUnregisterAddress(_name); } function getContract(string _name) public view returns(address) { - return contracts[keccak256(_name)]; + return contracts[keccak256(abi.encodePacked(_name))]; } function registerUint(string _name, uint _number) public onlyOwner { - numbers[keccak256(_name)] = _number; + numbers[keccak256(abi.encodePacked(_name))] = _number; emit LogRegisterUint(_name, _number); } function unregisterUint(string _name) public onlyOwner { - delete numbers[keccak256(_name)]; + delete numbers[keccak256(abi.encodePacked(_name))]; emit LogUnregisterUint(_name); } function getUint(string _name) public view returns(uint) { - return numbers[keccak256(_name)]; + return numbers[keccak256(abi.encodePacked(_name))]; } function registerString(string _name, string _string) public onlyOwner { - strings[keccak256(_name)] = _string; + strings[keccak256(abi.encodePacked(_name))] = _string; emit LogRegisterString(_name, _string); } function unregisterString(string _name) public onlyOwner { - delete strings[keccak256(_name)]; + delete strings[keccak256(abi.encodePacked(_name))]; emit LogUnregisterString(_name); } function getString(string _name) public view returns(string) { - return strings[keccak256(_name)]; + return strings[keccak256(abi.encodePacked(_name))]; } } diff --git a/contracts/paratii/Sales.sol b/contracts/paratii/Sales.sol index d94890c..9c35191 100644 --- a/contracts/paratii/Sales.sol +++ b/contracts/paratii/Sales.sol @@ -42,7 +42,7 @@ contract Sales is Ownable { */ function create(address _buyer, string _videoId, uint _price, string _ipfsData) public onlyOwnerOrStore { - _sales[_buyer][keccak256(_videoId)] = Data(true, _price, _ipfsData); + _sales[_buyer][keccak256(abi.encodePacked(_videoId))] = Data(true, _price, _ipfsData); emit LogCreateSale(_buyer, _videoId, _price, _ipfsData); } @@ -52,7 +52,7 @@ contract Sales is Ownable { */ function remove(address _buyer, string _videoId) public onlyOwnerOrStore { - delete _sales[_buyer][keccak256(_videoId)]; + delete _sales[_buyer][keccak256(abi.encodePacked(_videoId))]; emit LogRemoveSale(_buyer, _videoId); } @@ -62,7 +62,7 @@ contract Sales is Ownable { * @return price and ipfsData */ function get(address _buyer, string _videoId) public view returns(uint, string) { - Data storage _data = _sales[_buyer][keccak256(_videoId)]; + Data storage _data = _sales[_buyer][keccak256(abi.encodePacked(_videoId))]; return ( _data._price, _data._ipfsData @@ -70,6 +70,6 @@ contract Sales is Ownable { } function userBoughtVideo(address _buyer, string _videoId) public view returns(bool) { - return _sales[_buyer][keccak256(_videoId)]._isRegistered; + return _sales[_buyer][keccak256(abi.encodePacked(_videoId))]._isRegistered; } } diff --git a/contracts/paratii/Store.sol b/contracts/paratii/Store.sol index 32be68b..def2878 100644 --- a/contracts/paratii/Store.sol +++ b/contracts/paratii/Store.sol @@ -43,7 +43,16 @@ contract Store is Ownable, Debug { // get the info about the video Avatar avatar = Avatar(registry.getContract("Avatar")); /*Videos videos = Videos(registry.getContract("Videos"));*/ - var (owner, price, _3, _4_, _5, _6) = Videos(registry.getContract("Videos")).get(videoId); + + address owner; + uint256 price; + string memory _3; + string memory _4; + string memory _5; + address _6; + + (owner, price, _3, _4, _5, _6) = Videos(registry.getContract("Videos")).get(videoId); + uint256 paratiiPart = price.mul(redistributionPoolShare()).div(10 ** 18); avatar.transferFrom(msg.sender, address(avatar), paratiiPart); uint256 ownerPart = price.sub(paratiiPart); @@ -53,7 +62,7 @@ contract Store is Ownable, Debug { return true; } - function redistributionPoolShare() internal constant returns(uint256) { + function redistributionPoolShare() internal view returns(uint256) { // the "percentage" in precision 10**18 return registry.getUint("VideoRedistributionPoolShare"); } diff --git a/contracts/paratii/TcrPlaceholder.sol b/contracts/paratii/TcrPlaceholder.sol index 7fdd3e7..e742c30 100644 --- a/contracts/paratii/TcrPlaceholder.sol +++ b/contracts/paratii/TcrPlaceholder.sol @@ -62,7 +62,7 @@ contract TcrPlaceholder is Ownable { require(_amount >= minDeposit); // set owner - Listing storage listing = listings[keccak256(_videoId)]; + Listing storage listing = listings[keccak256(abi.encodePacked(_videoId))]; listing.owner = msg.sender; // transfer tokens from user to TcrPlaceholder contract @@ -97,7 +97,7 @@ contract TcrPlaceholder is Ownable { * @param _videoId videoId to remove */ function exit(string _videoId) external { - Listing storage listing = listings[keccak256(_videoId)]; + Listing storage listing = listings[keccak256(abi.encodePacked(_videoId))]; require(msg.sender == listing.owner); require(isWhitelisted(_videoId)); @@ -139,7 +139,7 @@ contract TcrPlaceholder is Ownable { @param _videoId The _videoId of an application/listing to be whitelisted */ function whitelistApplication(string _videoId) private { - bytes32 videoHash = keccak256(_videoId); + bytes32 videoHash = keccak256(abi.encodePacked(_videoId)); listings[videoHash].whitelisted = true; } @@ -153,12 +153,12 @@ contract TcrPlaceholder is Ownable { //------------------------ /// @dev returns true if video is whitelisted function isWhitelisted(string _videoId) view public returns (bool whitelisted) { - return listings[keccak256(_videoId)].whitelisted; + return listings[keccak256(abi.encodePacked(_videoId))].whitelisted; } // @dev returns true if apply was called for this video function appWasMade(string _videoId) view public returns (bool exists) { - return listings[keccak256(_videoId)].applicationExpiry > 0; + return listings[keccak256(abi.encodePacked(_videoId))].applicationExpiry > 0; } /// @dev returns true if the provided termDate has passed @@ -175,7 +175,7 @@ contract TcrPlaceholder is Ownable { @param _videoId The videoId whose status should be examined */ function canBeWhitelisted(string _videoId) view public returns (bool) { - bytes32 videoHash = keccak256(_videoId); + bytes32 videoHash = keccak256(abi.encodePacked(_videoId)); // Ensures that the application was made, // the application period has ended, @@ -194,7 +194,7 @@ contract TcrPlaceholder is Ownable { @param _videoId the videoId to be removed */ function resetListing(string _videoId) private { - bytes32 videoHash = keccak256(_videoId); + bytes32 videoHash = keccak256(abi.encodePacked(_videoId)); Listing storage listing = listings[videoHash]; // Transfers any remaining balance back to the owner diff --git a/contracts/paratii/Videos.sol b/contracts/paratii/Videos.sol index 6e13cf4..d29d5b4 100644 --- a/contracts/paratii/Videos.sol +++ b/contracts/paratii/Videos.sol @@ -38,13 +38,13 @@ contract Videos is Ownable { } modifier onlyRegistrarOrAvatar(string _videoId) { - bytes32 id = keccak256(_videoId); + bytes32 id = keccak256(abi.encodePacked(_videoId)); VideoInfo storage videoInfo = videos[id]; require(msg.sender == owner || (videoInfo.registrar == 0 || msg.sender == videoInfo.registrar)); _; } modifier onlyRegistrarOrAvatarOrOwner(string _videoId) { - bytes32 id = keccak256(_videoId); + bytes32 id = keccak256(abi.encodePacked(_videoId)); VideoInfo storage videoInfo = videos[id]; require(msg.sender == owner || (videoInfo.registrar == 0 || msg.sender == videoInfo.registrar || msg.sender == videoInfo.owner)); _; @@ -74,7 +74,7 @@ contract Videos is Ownable { string _ipfsData ) onlyRegistrarOrAvatarOrOwner(_videoId) public { - bytes32 id = keccak256(_videoId); + bytes32 id = keccak256(abi.encodePacked(_videoId)); videos[id] = VideoInfo({ _id: id, @@ -90,7 +90,7 @@ contract Videos is Ownable { } function remove(string _videoId) public onlyRegistrarOrAvatarOrOwner(_videoId) { - bytes32 id = keccak256(_videoId); + bytes32 id = keccak256(abi.encodePacked(_videoId)); delete videos[id]; emit LogRemoveVideo(_videoId); } @@ -105,7 +105,7 @@ contract Videos is Ownable { view returns(address, uint256, string, string, string, address) { - VideoInfo storage videoInfo = videos[keccak256(_videoId)]; + VideoInfo storage videoInfo = videos[keccak256(abi.encodePacked(_videoId))]; return (videoInfo.owner, videoInfo.price, videoInfo.ipfsHashOrig, videoInfo.ipfsHash, videoInfo.ipfsData, videoInfo.registrar); } } diff --git a/contracts/paratii/Views.sol b/contracts/paratii/Views.sol index 36a17a0..bcbd30a 100644 --- a/contracts/paratii/Views.sol +++ b/contracts/paratii/Views.sol @@ -29,21 +29,21 @@ contract Views is Ownable { } function create(address _viewer, string _videoId, string _ipfsData) public onlyOwnerOrAvatar { - _views[_viewer][keccak256(_videoId)] = Data(true, _ipfsData); + _views[_viewer][keccak256(abi.encodePacked(_videoId))] = Data(true, _ipfsData); emit LogCreateView(_viewer, _videoId, _ipfsData); } function remove(address _viewer, string _videoId) public onlyOwnerOrAvatar { - delete _views[_viewer][keccak256(_videoId)]; + delete _views[_viewer][keccak256(abi.encodePacked(_videoId))]; emit LogRemoveView(_viewer, _videoId); } function get(address _viewer, string _videoId) public view onlyOwnerOrAvatar returns(bool, string) { - Data data = _views[_viewer][keccak256(_videoId)]; + Data storage data = _views[_viewer][keccak256(abi.encodePacked(_videoId))]; return (data._isRegistered, data._ipfsData); } function userViewedVideo(address _viewer, string _videoId) public view returns(bool) { - return _views[_viewer][keccak256(_videoId)]._isRegistered; + return _views[_viewer][keccak256(abi.encodePacked(_videoId))]._isRegistered; } } diff --git a/contracts/paratii/Vouchers.sol b/contracts/paratii/Vouchers.sol index b901927..cd038a0 100644 --- a/contracts/paratii/Vouchers.sol +++ b/contracts/paratii/Vouchers.sol @@ -45,7 +45,7 @@ contract Vouchers is Ownable { /* A convenience function that hashes teh voucher, to be call"ed locally */ function hashVoucher(string _voucher) public pure returns(bytes32 _hashedVoucher) { - return keccak256(_voucher); + return keccak256(abi.encodePacked(_voucher)); } /* diff --git a/yarn.lock b/yarn.lock index ff3c009..8b4b557 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,36 +2,15 @@ # yarn lockfile v1 -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - -"@nodelib/fs.stat@^1.0.1": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.0.tgz#50c1e2260ac0ed9439a181de3725a0168d59c48a" - -"@samverschueren/stream-to-observable@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" - dependencies: - any-observable "^0.3.0" - -"@sindresorhus/is@^0.7.0": - version "0.7.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" - abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" -accepts@~1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" +accepts@~1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" dependencies: - mime-types "~2.1.16" + mime-types "~2.1.18" negotiator "0.6.1" acorn-jsx@^3.0.0: @@ -44,15 +23,15 @@ acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" -acorn@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.2.1.tgz#317ac7821826c22c702d66189ab8359675f135d7" +acorn@^5.5.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.1.tgz#f095829297706a7c9776958c0afc8930a9b9d9d8" ajv-keywords@^1.0.0: version "1.5.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" -ajv@^4.7.0, ajv@^4.9.1: +ajv@^4.7.0: version "4.11.8" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" dependencies: @@ -60,8 +39,8 @@ ajv@^4.7.0, ajv@^4.9.1: json-stable-stringify "^1.0.1" ajv@^5.1.0: - version "5.5.1" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.1.tgz#b38bb8876d9e86bee994956a04e721e88b248eb2" + version "5.5.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" @@ -82,13 +61,13 @@ amp@0.3.1, amp@~0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/amp/-/amp-0.3.1.tgz#6adf8d58a74f361e82c1fa8d389c079e139fc47d" -ansi-escapes@^1.0.0, ansi-escapes@^1.1.0: +ansi-escapes@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" ansi-escapes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" + version "3.1.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" ansi-regex@^2.0.0: version "2.1.1" @@ -102,26 +81,12 @@ ansi-styles@^2.1.0, ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansi-styles@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" - dependencies: - color-convert "^1.9.0" - ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" dependencies: color-convert "^1.9.0" -ansi-styles@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" - -any-observable@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" - anymatch@^1.3.0: version "1.3.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" @@ -134,8 +99,8 @@ aproba@^1.0.3: resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + version "1.1.5" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -148,8 +113,8 @@ argparse@^0.1.15: underscore.string "~2.4.0" argparse@^1.0.7: - version "1.0.9" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" dependencies: sprintf-js "~1.0.2" @@ -159,22 +124,10 @@ arr-diff@^2.0.0: dependencies: arr-flatten "^1.0.1" -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: +arr-flatten@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - -array-differ@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - array-find-index@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" @@ -197,10 +150,6 @@ array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - array.prototype.find@^2.0.1: version "2.0.4" resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90" @@ -208,7 +157,7 @@ array.prototype.find@^2.0.1: define-properties "^1.1.2" es-abstract "^1.7.0" -arrify@^1.0.0, arrify@^1.0.1: +arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -224,22 +173,6 @@ assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - -ast-types@0.10.1: - version "0.10.1" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.10.1.tgz#f52fca9715579a14f841d67d7f8d25432ab6a3dd" - -ast-types@0.11.3: - version "0.11.3" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.11.3.tgz#c20757fe72ee71278ea0ff3d87e5c2ca30d9edf8" - async-each@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" @@ -252,35 +185,27 @@ async@1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/async/-/async-1.4.2.tgz#6c9edcb11ced4f0dd2f2d40db0d49a109c088aab" -async@1.5, async@^1.5.0: +async@1.5: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" async@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" + version "2.6.1" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" dependencies: - lodash "^4.14.0" + lodash "^4.17.10" asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" -atob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.1.tgz#ae2d5a729477f289d60dd7f96a6314a22dd6c22a" - -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" -aws4@^1.2.1, aws4@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" +aws4@^1.6.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289" babel-cli@^6.26.0: version "6.26.0" @@ -312,8 +237,8 @@ babel-code-frame@^6.16.0, babel-code-frame@^6.26.0: js-tokens "^3.0.2" babel-core@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" + version "6.26.3" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" dependencies: babel-code-frame "^6.26.0" babel-generator "^6.26.0" @@ -325,19 +250,19 @@ babel-core@^6.26.0: babel-traverse "^6.26.0" babel-types "^6.26.0" babylon "^6.18.0" - convert-source-map "^1.5.0" - debug "^2.6.8" + convert-source-map "^1.5.1" + debug "^2.6.9" json5 "^0.5.1" lodash "^4.17.4" minimatch "^3.0.4" path-is-absolute "^1.0.1" - private "^0.1.7" + private "^0.1.8" slash "^1.0.0" - source-map "^0.5.6" + source-map "^0.5.7" babel-generator@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" + version "6.26.1" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" dependencies: babel-messages "^6.23.0" babel-runtime "^6.26.0" @@ -345,25 +270,9 @@ babel-generator@^6.26.0: detect-indent "^4.0.0" jsesc "^1.3.0" lodash "^4.17.4" - source-map "^0.5.6" + source-map "^0.5.7" trim-right "^1.0.1" -babel-helper-bindify-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - babel-helper-call-delegate@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" @@ -382,23 +291,6 @@ babel-helper-define-map@^6.24.1: babel-types "^6.26.0" lodash "^4.17.4" -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-explode-class@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" - dependencies: - babel-helper-bindify-decorators "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - babel-helper-function-name@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" @@ -438,16 +330,6 @@ babel-helper-regex@^6.24.1: babel-types "^6.26.0" lodash "^4.17.4" -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - babel-helper-replace-supers@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" @@ -478,93 +360,10 @@ babel-plugin-check-es2015-constants@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-syntax-async-functions@^6.1.4, babel-plugin-syntax-async-functions@^6.8.0: +babel-plugin-syntax-async-functions@^6.1.4: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" -babel-plugin-syntax-async-generators@^6.5.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" - -babel-plugin-syntax-class-constructor-call@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" - -babel-plugin-syntax-class-properties@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" - -babel-plugin-syntax-decorators@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" - -babel-plugin-syntax-dynamic-import@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - -babel-plugin-syntax-export-extensions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" - -babel-plugin-syntax-flow@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" - -babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - -babel-plugin-syntax-trailing-function-commas@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - -babel-plugin-transform-async-generator-functions@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-generators "^6.5.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-class-constructor-call@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9" - dependencies: - babel-plugin-syntax-class-constructor-call "^6.18.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-class-properties@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" - dependencies: - babel-helper-function-name "^6.24.1" - babel-plugin-syntax-class-properties "^6.8.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" - dependencies: - babel-helper-explode-class "^6.24.1" - babel-plugin-syntax-decorators "^6.13.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-types "^6.24.1" - babel-plugin-transform-es2015-arrow-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" @@ -650,8 +449,8 @@ babel-plugin-transform-es2015-modules-amd@^6.24.1: babel-template "^6.24.1" babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" + version "6.26.2" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" dependencies: babel-plugin-transform-strict-mode "^6.24.1" babel-runtime "^6.26.0" @@ -733,35 +532,6 @@ babel-plugin-transform-es2015-unicode-regex@^6.24.1: babel-runtime "^6.22.0" regexpu-core "^2.0.0" -babel-plugin-transform-exponentiation-operator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-export-extensions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" - dependencies: - babel-plugin-syntax-export-extensions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-flow-strip-types@^6.8.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" - dependencies: - babel-plugin-syntax-flow "^6.18.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-object-rest-spread@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - babel-plugin-transform-regenerator@^6.24.1: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" @@ -783,7 +553,7 @@ babel-polyfill@^6.26.0: core-js "^2.5.0" regenerator-runtime "^0.10.5" -babel-preset-es2015@^6.6.0, babel-preset-es2015@^6.9.0: +babel-preset-es2015@^6.6.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" dependencies: @@ -812,34 +582,7 @@ babel-preset-es2015@^6.6.0, babel-preset-es2015@^6.9.0: babel-plugin-transform-es2015-unicode-regex "^6.24.1" babel-plugin-transform-regenerator "^6.24.1" -babel-preset-stage-1@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0" - dependencies: - babel-plugin-transform-class-constructor-call "^6.24.1" - babel-plugin-transform-export-extensions "^6.22.0" - babel-preset-stage-2 "^6.24.1" - -babel-preset-stage-2@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" - dependencies: - babel-plugin-syntax-dynamic-import "^6.18.0" - babel-plugin-transform-class-properties "^6.24.1" - babel-plugin-transform-decorators "^6.24.1" - babel-preset-stage-3 "^6.24.1" - -babel-preset-stage-3@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" - dependencies: - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-generator-functions "^6.24.1" - babel-plugin-transform-async-to-generator "^6.24.1" - babel-plugin-transform-exponentiation-operator "^6.24.1" - babel-plugin-transform-object-rest-spread "^6.22.0" - -babel-register@^6.24.1, babel-register@^6.26.0, babel-register@^6.9.0: +babel-register@^6.24.1, babel-register@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" dependencies: @@ -891,48 +634,24 @@ babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: lodash "^4.17.4" to-fast-properties "^1.0.3" -babylon@^6.17.3, babylon@^6.18.0: +babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" -babylon@^7.0.0-beta.30: - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.47.tgz#6d1fa44f0abec41ab7c780481e62fd9aafbdea80" - balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" dependencies: tweetnacl "^0.14.3" -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - binary-extensions@^1.0.0: version "1.11.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" -binaryextensions@2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-2.1.1.tgz#3209a51ca4a4ad541a3b8d3d6a6d5b83a2485935" - bindings@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.3.0.tgz#b346f6ecf6a95f5a815c5839fc7cdb22502f1ed7" @@ -944,16 +663,11 @@ bip66@^1.1.3: safe-buffer "^5.0.1" bl@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" - dependencies: - readable-stream "^2.0.5" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + version "1.2.2" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" dependencies: - inherits "~2.0.0" + readable-stream "^2.3.5" + safe-buffer "^5.1.1" bn.js@4.11.6: version "4.11.6" @@ -963,7 +677,7 @@ bn.js@^4.11.0, bn.js@^4.11.3, bn.js@^4.11.6, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" -body-parser@1.18.2, body-parser@^1.16.0: +body-parser@1.18.2: version "1.18.2" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" dependencies: @@ -978,27 +692,24 @@ body-parser@1.18.2, body-parser@^1.16.0: raw-body "2.3.2" type-is "~1.6.15" -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - -boom@4.x.x: - version "4.3.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" - dependencies: - hoek "4.x.x" - -boom@5.x.x: - version "5.2.0" - resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" +body-parser@^1.16.0: + version "1.18.3" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" dependencies: - hoek "4.x.x" + bytes "3.0.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.2" + http-errors "~1.6.3" + iconv-lite "0.4.23" + on-finished "~2.3.0" + qs "6.5.2" + raw-body "2.3.3" + type-is "~1.6.16" brace-expansion@^1.0.0, brace-expansion@^1.1.7: - version "1.1.8" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" dependencies: balanced-match "^1.0.0" concat-map "0.0.1" @@ -1011,21 +722,6 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" -braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - brorand@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" @@ -1057,15 +753,28 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -buffer-from@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.0.0.tgz#4cb8832d23612589b0406e9e2956c17f06fdf531" +buffer-alloc-unsafe@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" -buffer-to-arraybuffer@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.2.tgz#d0d80564dc31866a1976515487b3ab620db7c849" +buffer-alloc@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" dependencies: - tape "^3.0.3" + buffer-alloc-unsafe "^1.1.0" + buffer-fill "^1.0.0" + +buffer-fill@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" + +buffer-from@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.0.tgz#87fcaa3a298358e0ade6e442cfce840740d1ad04" + +buffer-to-arraybuffer@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a" buffer-xor@^1.0.3: version "1.0.3" @@ -1083,36 +792,6 @@ bytes@^2.4.0: version "2.5.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.5.0.tgz#4c9423ea2d252c270c41b2bdefeff9bb6b62c06a" -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -cacheable-request@^2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d" - dependencies: - clone-response "1.0.2" - get-stream "3.0.0" - http-cache-semantics "3.8.1" - keyv "3.0.0" - lowercase-keys "1.0.0" - normalize-url "2.0.1" - responselike "1.0.2" - -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" @@ -1127,7 +806,7 @@ camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" -camelcase@^4.0.0, camelcase@^4.1.0: +camelcase@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" @@ -1156,14 +835,6 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: supports-color "^2.0.0" chalk@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" - -chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" dependencies: @@ -1171,14 +842,6 @@ chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f" - dependencies: - ansi-styles "~1.0.0" - has-color "~0.1.0" - strip-ansi "~0.1.0" - chardet@^0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" @@ -1222,8 +885,8 @@ chownr@^1.0.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" ci-info@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.2.tgz#03561259db48d0474c8bdc90f5b47b068b6bbfb4" + version "1.1.3" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.3.tgz#710193264bb05c77b8c90d02f5aaf22216a667b2" cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" @@ -1236,16 +899,7 @@ circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -cli-cursor@^1.0.1, cli-cursor@^1.0.2: +cli-cursor@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" dependencies: @@ -1257,23 +911,12 @@ cli-cursor@^2.1.0: dependencies: restore-cursor "^2.0.0" -cli-spinners@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" - -cli-table@0.3.1, cli-table@^0.3.1: +cli-table@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23" dependencies: colors "1.0.3" -cli-truncate@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" - dependencies: - slice-ansi "0.0.4" - string-width "^1.0.1" - cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" @@ -1286,48 +929,6 @@ cliui@^3.2.0: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone-buffer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" - -clone-response@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" - dependencies: - mimic-response "^1.0.0" - -clone-stats@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" - -clone-stats@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" - -clone@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - -clone@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" - -cloneable-readable@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.2.tgz#d591dee4a8f8bc15da43ce97dceeba13d43e2a65" - dependencies: - inherits "^2.0.1" - process-nextick-args "^2.0.0" - readable-stream "^2.3.5" - cmd-shim@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-2.0.2.tgz#6fcbda99483a8fd15d7d30a196ca69d688a2efdb" @@ -1347,34 +948,23 @@ coffee-script@~1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.10.0.tgz#12938bcf9be1948fa006f92e0c4c9e81705108c0" -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" + version "1.9.2" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.2.tgz#49881b8fba67df12a96bdf3f56c0aab9e7913147" dependencies: - color-name "^1.1.1" + color-name "1.1.1" -color-name@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" +color-name@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.1.tgz#4b1415304cf50028ea81643643bd82ea05803689" colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" -colors@^1.1.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.0.tgz#5f20c9fef6945cb1134260aab33bfbdc8295e04e" - -combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" +combined-stream@1.0.6, combined-stream@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" dependencies: delayed-stream "~1.0.0" @@ -1389,25 +979,18 @@ commander@2.11.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" commander@^2.11.0, commander@^2.9, commander@^2.9.0: - version "2.12.2" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" + version "2.16.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.16.0.tgz#f16390593996ceb4f3eeb020b31d78528f7f8a50" concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" concat-stream@^1.4.7, concat-stream@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" dependencies: + buffer-from "^1.0.0" inherits "^2.0.3" readable-stream "^2.2.2" typedarray "^0.0.6" @@ -1432,7 +1015,7 @@ content-type@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" -convert-source-map@^1.5.0: +convert-source-map@^1.5.0, convert-source-map@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" @@ -1444,17 +1027,9 @@ cookie@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - core-js@^2.4.0, core-js@^2.5.0: - version "2.5.3" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e" - -core-js@^2.4.1: - version "2.5.6" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.6.tgz#0fe6d45bf3cac3ac364a9d72de7576f4eb221b9d" + version "2.5.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -1468,17 +1043,18 @@ cors@^2.8.1: vary "^1" create-hash@^1.1.0, create-hash@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" dependencies: cipher-base "^1.0.1" inherits "^2.0.1" - ripemd160 "^2.0.0" + md5.js "^1.3.4" + ripemd160 "^2.0.1" sha.js "^2.4.0" create-hmac@^1.1.4: - version "1.1.6" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" dependencies: cipher-base "^1.0.3" create-hash "^1.1.0" @@ -1501,28 +1077,6 @@ cross-spawn@^5.0.1: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - dependencies: - boom "2.x.x" - -cryptiles@3.x.x: - version "3.1.2" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" - dependencies: - boom "5.x.x" - currently-unhandled@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" @@ -1535,24 +1089,12 @@ d@1: dependencies: es5-ext "^0.10.9" -dargs@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/dargs/-/dargs-5.1.0.tgz#ec7ea50c78564cd36c9d5ec18f66329fade27829" - dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" dependencies: assert-plus "^1.0.0" -date-fns@^1.27.2: - version "1.29.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" - -dateformat@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" - death@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/death/-/death-1.1.0.tgz#01aa9c401edd92750514470b8266390c66c67318" @@ -1561,7 +1103,7 @@ debug-log@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f" -debug@*, debug@3.1.0, debug@^3.1.0: +debug@*, debug@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" dependencies: @@ -1573,7 +1115,7 @@ debug@2.2.0, debug@~2.2.0: dependencies: ms "0.7.1" -debug@2.6.9, debug@^2.1.1, debug@^2.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8: +debug@2.6.9, debug@^2.1.1, debug@^2.1.2, debug@^2.2, debug@^2.2.0, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: @@ -1587,23 +1129,15 @@ decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" -decompress-response@^3.2.0, decompress-response@^3.3.0: +decompress-response@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" dependencies: mimic-response "^1.0.0" -deep-equal@~0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-0.2.2.tgz#84b745896f34c684e98f2ce0e42abaf43bba017d" - -deep-extend@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.5.1.tgz#b894a9dd90d3023fbf1c55a394fb858eb2066f1f" - -deep-extend@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" deep-is@~0.1.3: version "0.1.3" @@ -1622,32 +1156,9 @@ define-properties@^1.1.2: foreach "^2.0.5" object-keys "^1.0.8" -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -defined@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-0.0.0.tgz#f35eea7d705e933baf13b2f03b3f83d921403b3e" - deglob@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/deglob/-/deglob-2.1.0.tgz#4d44abe16ef32c779b4972bd141a80325029a14a" + version "2.1.1" + resolved "https://registry.yarnpkg.com/deglob/-/deglob-2.1.1.tgz#d268e168727799862e8eac07042e165957c1f3be" dependencies: find-root "^1.0.0" glob "^7.0.5" @@ -1676,18 +1187,18 @@ delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" -depd@1.1.1, depd@~1.1.1: +depd@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" +depd@~1.1.1, depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + destroy@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" -detect-conflict@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/detect-conflict/-/detect-conflict-1.0.1.tgz#088657a66a961c05019db7c4230883b1c6b4176e" - detect-indent@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" @@ -1706,17 +1217,6 @@ diff@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" -diff@^3.3.1, diff@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - -dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - doctrine@1.5.0, doctrine@^1.2.2: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" @@ -1725,8 +1225,8 @@ doctrine@1.5.0, doctrine@^1.2.2: isarray "^1.0.0" doctrine@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.2.tgz#68f96ce8efc56cc42651f1faadb4f175273b0075" + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" dependencies: esutils "^2.0.2" @@ -1742,13 +1242,9 @@ drbg.js@^1.0.1: create-hash "^1.1.2" create-hmac "^1.1.4" -duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - -duplexify@^3.1.2, duplexify@^3.5.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.1.tgz#4e1516be68838bc90a49994f0b39a6e5960befcd" +duplexify@^3.5.0, duplexify@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.0.tgz#592903f5d80b38d037220541264d69a198fb3410" dependencies: end-of-stream "^1.0.0" inherits "^2.0.1" @@ -1761,22 +1257,10 @@ ecc-jsbn@~0.1.1: dependencies: jsbn "~0.1.0" -editions@^1.3.3: - version "1.3.4" - resolved "https://registry.yarnpkg.com/editions/-/editions-1.3.4.tgz#3662cb592347c3168eb8e498a0ff73271d67f50b" - ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" -ejs@^2.5.9: - version "2.6.1" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.6.1.tgz#498ec0d495655abc6f23cd61868d926464071aa0" - -elegant-spinner@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" - elliptic@^6.2.3, elliptic@^6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" @@ -1789,54 +1273,25 @@ elliptic@^6.2.3, elliptic@^6.4.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - -encodeurl@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" dependencies: once "^1.4.0" -enhanced-resolve@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz#e34a6eaa790f62fccd71d93959f56b2b432db10a" - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -envinfo@^5.7.0: - version "5.7.0" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-5.7.0.tgz#690e5fdf30aa75dda19c0c5338d0a48a48f1e998" - -errno@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.5.tgz#a563781a6052bc2c9ccd89e8cef0eb9506e0c321" - dependencies: - prr "~1.0.1" - error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" dependencies: is-arrayish "^0.2.1" -error@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/error/-/error-7.0.2.tgz#a5f75fff4d9926126ddac0ea5dc38e689153cb02" - dependencies: - string-template "~0.2.1" - xtend "~4.0.0" - es-abstract@^1.7.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864" + version "1.12.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" dependencies: es-to-primitive "^1.1.1" function-bind "^1.1.1" @@ -1853,13 +1308,14 @@ es-to-primitive@^1.1.1: is-symbol "^1.0.1" es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.37" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3" + version "0.10.45" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.45.tgz#0bfdf7b473da5919d5adf3bd25ceb754fccc3653" dependencies: - es6-iterator "~2.0.1" + es6-iterator "~2.0.3" es6-symbol "~3.1.1" + next-tick "1" -es6-iterator@^2.0.1, es6-iterator@~2.0.1: +es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" dependencies: @@ -1942,8 +1398,8 @@ eslint-import-resolver-node@^0.2.0: resolve "^1.1.6" eslint-module-utils@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz#abaec824177613b8a95b299639e1b6facf473449" + version "2.2.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746" dependencies: debug "^2.6.8" pkg-dir "^1.0.0" @@ -2032,28 +1488,27 @@ eslint@~3.19.0: user-home "^2.0.0" espree@^3.4.0: - version "3.5.2" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca" + version "3.5.4" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.4.tgz#b0f447187c8a8bed944b815a660bddf5deb5d1a7" dependencies: - acorn "^5.2.1" + acorn "^5.5.0" acorn-jsx "^3.0.0" -esprima@^4.0.0, esprima@~4.0.0: +esprima@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" esquery@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" + version "1.0.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" dependencies: estraverse "^4.0.0" esrecurse@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" + version "4.2.1" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" dependencies: estraverse "^4.1.0" - object-assign "^4.0.1" estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" @@ -2099,8 +1554,8 @@ ethjs-unit@0.1.6: number-to-bn "1.7.0" ethjs-util@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.4.tgz#1c8b6879257444ef4d3f3fbbac2ded12cd997d93" + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.6.tgz#f308b62f185f9fe6237132fb2a9818866a5cd536" dependencies: is-hex-prefixed "1.0.0" strip-hex-prefix "1.0.0" @@ -2123,18 +1578,6 @@ evp_bytestokey@^1.0.3: md5.js "^1.3.4" safe-buffer "^5.1.1" -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - exit-hook@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" @@ -2145,35 +1588,17 @@ expand-brackets@^0.1.4: dependencies: is-posix-bracket "^0.1.0" -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - expand-range@^1.8.1: version "1.8.2" resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" dependencies: fill-range "^2.1.0" -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - dependencies: - homedir-polyfill "^1.0.1" - express@^4.14.0: - version "4.16.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c" + version "4.16.3" + resolved "https://registry.yarnpkg.com/express/-/express-4.16.3.tgz#6af8a502350db3246ecc4becf6b5a34d22f7ed53" dependencies: - accepts "~1.3.4" + accepts "~1.3.5" array-flatten "1.1.1" body-parser "1.18.2" content-disposition "0.5.2" @@ -2181,55 +1606,34 @@ express@^4.14.0: cookie "0.3.1" cookie-signature "1.0.6" debug "2.6.9" - depd "~1.1.1" - encodeurl "~1.0.1" + depd "~1.1.2" + encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "1.1.0" + finalhandler "1.1.1" fresh "0.5.2" merge-descriptors "1.0.1" methods "~1.1.2" on-finished "~2.3.0" parseurl "~1.3.2" path-to-regexp "0.1.7" - proxy-addr "~2.0.2" + proxy-addr "~2.0.3" qs "6.5.1" range-parser "~1.2.0" safe-buffer "5.1.1" - send "0.16.1" - serve-static "1.13.1" + send "0.16.2" + serve-static "1.13.2" setprototypeof "1.1.0" - statuses "~1.3.1" - type-is "~1.6.15" + statuses "~1.4.0" + type-is "~1.6.16" utils-merge "1.0.1" vary "~1.1.2" -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.0, extend@~3.0.1: +extend@~3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" external-editor@^2.0.4: - version "2.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" - dependencies: - chardet "^0.4.0" - iconv-lite "^0.4.17" - tmp "^0.0.33" - -external-editor@^2.1.0: version "2.2.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" dependencies: @@ -2243,19 +1647,6 @@ extglob@^0.3.1: dependencies: is-extglob "^1.0.0" -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -2265,19 +1656,8 @@ extsprintf@^1.2.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" fast-deep-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" - -fast-glob@^2.0.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.2.tgz#71723338ac9b4e0e2fff1d6748a2a13d5ed352bf" - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.0.1" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.1" - micromatch "^3.1.10" + version "1.1.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" fast-json-stable-stringify@^2.0.0: version "2.0.0" @@ -2287,7 +1667,7 @@ fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" -figures@^1.3.5, figures@^1.7.0: +figures@^1.3.5: version "1.7.0" resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" dependencies: @@ -2312,34 +1692,25 @@ filename-regex@^2.0.0: resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" fill-range@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" + version "2.2.4" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" dependencies: is-number "^2.1.0" isobject "^2.0.0" - randomatic "^1.1.3" + randomatic "^3.0.0" repeat-element "^1.1.2" repeat-string "^1.5.2" -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" +finalhandler@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" dependencies: debug "2.6.9" - encodeurl "~1.0.1" + encodeurl "~1.0.2" escape-html "~1.0.3" on-finished "~2.3.0" parseurl "~1.3.2" - statuses "~1.3.1" + statuses "~1.4.0" unpipe "~1.0.0" find-root@^1.0.0: @@ -2353,18 +1724,12 @@ find-up@^1.0.0: path-exists "^2.0.0" pinkie-promise "^2.0.0" -find-up@^2.0.0, find-up@^2.1.0: +find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" dependencies: locate-path "^2.0.0" -first-chunk-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz#1bdecdb8e083c0664b91945581577a43a9f31d70" - dependencies: - readable-stream "^2.0.2" - flat-cache@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" @@ -2374,17 +1739,13 @@ flat-cache@^1.2.1: graceful-fs "^4.1.2" write "^0.2.1" -flow-parser@^0.*: - version "0.72.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.72.0.tgz#6c8041e76ac7d0be1a71ce29c00cd1435fb6013c" - for-each@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" dependencies: - is-function "~1.0.0" + is-callable "^1.1.3" -for-in@^1.0.1, for-in@^1.0.2: +for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -2402,42 +1763,25 @@ forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" -form-data@~2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - form-data@~2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" + version "2.3.2" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" dependencies: asynckit "^0.4.0" - combined-stream "^1.0.5" + combined-stream "1.0.6" mime-types "^2.1.12" forwarded@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - dependencies: - map-cache "^0.2.2" - fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" -from2@^2.1.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" +fs-constants@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" fs-extra@^0.30.0: version "0.30.0" @@ -2449,6 +1793,12 @@ fs-extra@^0.30.0: path-is-absolute "^1.0.0" rimraf "^2.2.8" +fs-minipass@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" + dependencies: + minipass "^2.2.1" + fs-readdir-recursive@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" @@ -2458,39 +1808,21 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" fsevents@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.39" - -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + version "1.2.4" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" + nan "^2.9.2" + node-pre-gyp "^0.10.0" -function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1: +function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" ganache-cli@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ganache-cli/-/ganache-cli-6.1.0.tgz#486c846497204b644166b5f0f74c9b41d02bdc25" + version "6.1.5" + resolved "https://registry.yarnpkg.com/ganache-cli/-/ganache-cli-6.1.5.tgz#dea6987b5ee69eb40c2db3a7f811fb7087742817" dependencies: source-map-support "^0.5.3" - webpack-cli "^2.0.9" gauge@~2.7.3: version "2.7.4" @@ -2523,40 +1855,12 @@ get-stdin@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" -get-stream@3.0.0, get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" dependencies: assert-plus "^1.0.0" -gh-got@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/gh-got/-/gh-got-6.0.0.tgz#d74353004c6ec466647520a10bd46f7299d268d0" - dependencies: - got "^7.0.0" - is-plain-obj "^1.1.0" - -github-username@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/github-username/-/github-username-4.1.0.tgz#cbe280041883206da4212ae9e4b5f169c30bf417" - dependencies: - gh-got "^6.0.0" - -glob-all@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-all/-/glob-all-3.1.0.tgz#8913ddfb5ee1ac7812656241b03d5217c64b02ab" - dependencies: - glob "^7.0.5" - yargs "~1.2.6" - glob-base@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" @@ -2570,17 +1874,6 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - glob@7.1.2, glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" @@ -2601,31 +1894,6 @@ glob@^4.0.0: minimatch "^2.0.1" once "^1.3.0" -glob@~3.2.9: - version "3.2.11" - resolved "https://registry.yarnpkg.com/glob/-/glob-3.2.11.tgz#4a973f635b9190f715d10987d5c00fd2815ebe3d" - dependencies: - inherits "2" - minimatch "0.3" - -global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - global@~4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" @@ -2648,69 +1916,10 @@ globby@^5.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -globby@^8.0.0, globby@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.1.tgz#b5ad48b8aa80b35b814fc1281ecc851f1d2b5b50" - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - fast-glob "^2.0.2" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -got@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a" - dependencies: - decompress-response "^3.2.0" - duplexer3 "^0.1.4" - get-stream "^3.0.0" - is-plain-obj "^1.1.0" - is-retry-allowed "^1.0.0" - is-stream "^1.0.0" - isurl "^1.0.0-alpha5" - lowercase-keys "^1.0.0" - p-cancelable "^0.3.0" - p-timeout "^1.1.1" - safe-buffer "^5.0.1" - timed-out "^4.0.0" - url-parse-lax "^1.0.0" - url-to-options "^1.0.1" - -got@^8.3.1: - version "8.3.1" - resolved "https://registry.yarnpkg.com/got/-/got-8.3.1.tgz#093324403d4d955f5a16a7a8d39955d055ae10ed" - dependencies: - "@sindresorhus/is" "^0.7.0" - cacheable-request "^2.1.1" - decompress-response "^3.3.0" - duplexer3 "^0.1.4" - get-stream "^3.0.0" - into-stream "^3.1.0" - is-retry-allowed "^1.1.0" - isurl "^1.0.0-alpha5" - lowercase-keys "^1.0.0" - mimic-response "^1.0.0" - p-cancelable "^0.4.0" - p-timeout "^2.0.1" - pify "^3.0.0" - safe-buffer "^5.1.1" - timed-out "^4.0.1" - url-parse-lax "^3.0.0" - url-to-options "^1.0.1" - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" -grouped-queue@^0.3.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/grouped-queue/-/grouped-queue-0.3.3.tgz#c167d2a5319c5a0e0964ef6a25b7c2df8996c85c" - dependencies: - lodash "^4.17.2" - growl@1.10.3: version "1.10.3" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" @@ -2726,21 +1935,10 @@ gunzip-maybe@^1.4.0: pumpify "^1.3.3" through2 "^2.0.3" -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" - har-validator@~5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" @@ -2754,10 +1952,6 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-color@~0.1.0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f" - has-flag@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" @@ -2766,58 +1960,19 @@ has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" -has-symbol-support-x@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz#66ec2e377e0c7d7ccedb07a3a84d77510ff1bc4c" - -has-to-string-tag-x@^1.2.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" - dependencies: - has-symbol-support-x "^1.4.1" +has-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - has@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" - dependencies: - function-bind "^1.0.2" - -hash-base@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" dependencies: - inherits "^2.0.1" + function-bind "^1.1.1" hash-base@^3.0.0: version "3.0.4" @@ -2827,30 +1982,12 @@ hash-base@^3.0.0: safe-buffer "^5.0.1" hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + version "1.1.4" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.4.tgz#8b50e1f35d51bd01e5ed9ece4dbe3549ccfa0a3c" dependencies: inherits "^2.0.3" minimalistic-assert "^1.0.0" -hawk@3.1.3, hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - -hawk@~6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" - dependencies: - boom "4.x.x" - cryptiles "3.x.x" - hoek "4.x.x" - sntp "2.x.x" - he@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" @@ -2863,14 +2000,6 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - -hoek@4.x.x: - version "4.2.0" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" - home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" @@ -2878,21 +2007,11 @@ home-or-tmp@^2.0.0: os-homedir "^1.0.0" os-tmpdir "^1.0.1" -homedir-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" - dependencies: - parse-passwd "^1.0.0" - hosted-git-info@^2.1.4: - version "2.5.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" + version "2.7.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" -http-cache-semantics@3.8.1: - version "3.8.1" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" - -http-errors@1.6.2, http-errors@~1.6.2: +http-errors@1.6.2: version "1.6.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" dependencies: @@ -2901,13 +2020,14 @@ http-errors@1.6.2, http-errors@~1.6.2: setprototypeof "1.0.3" statuses ">= 1.3.1 < 2" -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" +http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" http-signature@~1.2.0: version "1.2.0" @@ -2917,43 +2037,34 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -iconv-lite@0.4.19, iconv-lite@^0.4.17: +iconv-lite@0.4.19: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" -ignore@^3.0.11, ignore@^3.0.9, ignore@^3.2.0: - version "3.3.7" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" +iconv-lite@0.4.23, iconv-lite@^0.4.17, iconv-lite@^0.4.4: + version "0.4.23" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ignore-walk@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" + dependencies: + minimatch "^3.0.4" -ignore@^3.3.5: - version "3.3.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.8.tgz#3f8e9c35d38708a3a7e0e9abb6c73e7ee7707b2b" +ignore@^3.0.11, ignore@^3.0.9, ignore@^3.2.0: + version "3.3.10" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" "ikt@git+http://ikt.pm2.io/ikt.git#master": version "0.0.0" resolved "git+http://ikt.pm2.io/ikt.git#3325a3e39a502418dc2e2e4bf21529cbbde96228" -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - dependencies: - pkg-dir "^2.0.0" - resolve-cwd "^2.0.0" - imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - dependencies: - repeating "^2.0.0" - -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -2961,7 +2072,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -3006,38 +2117,13 @@ inquirer@^3.0.1: strip-ansi "^4.0.0" through "^2.3.6" -inquirer@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-5.2.0.tgz#db350c2b73daca77ff1243962e9f22f099685726" - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^2.1.0" - figures "^2.0.0" - lodash "^4.3.0" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^5.5.2" - string-width "^2.1.0" - strip-ansi "^4.0.0" - through "^2.3.6" - -interpret@^1.0.0, interpret@^1.1.0: +interpret@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" -into-stream@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" - dependencies: - from2 "^2.1.1" - p-is-promise "^1.1.0" - invariant@^2.2.0, invariant@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" dependencies: loose-envify "^1.0.0" @@ -3045,21 +2131,9 @@ invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" -ipaddr.js@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0" - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - dependencies: - kind-of "^6.0.0" +ipaddr.js@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b" is-arrayish@^0.2.1: version "0.2.1" @@ -3082,27 +2156,15 @@ is-builtin-module@^1.0.0: builtin-modules "^1.0.0" is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" is-ci@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5" dependencies: ci-info "^1.0.0" -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - dependencies: - kind-of "^6.0.0" - is-date-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" @@ -3111,22 +2173,6 @@ is-deflate@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-deflate/-/is-deflate-1.0.0.tgz#c862901c3c161fb09dac7cdc7e784f80e98f2f14" -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" @@ -3137,24 +2183,14 @@ is-equal-shallow@^0.1.3: dependencies: is-primitive "^2.0.0" -is-extendable@^0.1.0, is-extendable@^0.1.1: +is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - dependencies: - is-plain-object "^2.0.4" - is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - is-finite@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" @@ -3171,7 +2207,7 @@ is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" -is-function@^1.0.1, is-function@~1.0.0: +is-function@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" @@ -3181,18 +2217,6 @@ is-glob@^2.0.0, is-glob@^2.0.1: dependencies: is-extglob "^1.0.0" -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - dependencies: - is-extglob "^2.1.1" - is-gzip@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-gzip/-/is-gzip-1.0.0.tgz#6ca8b07b99c77998025900e555ced8ed80879a83" @@ -3201,12 +2225,17 @@ is-hex-prefixed@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" +is-my-ip-valid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" + is-my-json-valid@^2.10.0: - version "2.16.1" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11" + version "2.17.2" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c" dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" + is-my-ip-valid "^1.0.0" jsonpointer "^4.0.0" xtend "^4.0.0" @@ -3216,39 +2245,17 @@ is-number@^2.1.0: dependencies: kind-of "^3.0.2" -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - dependencies: - kind-of "^3.0.2" - is-number@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" -is-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" - -is-observable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" - dependencies: - symbol-observable "^1.1.0" - -is-odd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" - dependencies: - is-number "^4.0.0" - is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" is-path-in-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" dependencies: is-path-inside "^1.0.0" @@ -3258,16 +2265,6 @@ is-path-inside@^1.0.0: dependencies: path-is-inside "^1.0.1" -is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - dependencies: - isobject "^3.0.1" - is-posix-bracket@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" @@ -3291,24 +2288,8 @@ is-regex@^1.0.4: has "^1.0.1" is-resolvable@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" - dependencies: - tryit "^1.0.1" - -is-retry-allowed@^1.0.0, is-retry-allowed@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - -is-scoped@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-scoped/-/is-scoped-1.0.0.tgz#449ca98299e713038256289ecb2b540dc437cb30" - dependencies: - scoped-regex "^1.0.0" - -is-stream@^1.0.0, is-stream@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" is-symbol@^1.0.1: version "1.0.1" @@ -3322,18 +2303,10 @@ is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" -is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" -isbinaryfile@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.2.tgz#4a3e974ec0cba9004d3fc6cde7209ea69368a621" - isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -3344,29 +2317,10 @@ isobject@^2.0.0: dependencies: isarray "1.0.0" -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -istextorbinary@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-2.2.1.tgz#a5231a08ef6dd22b268d0895084cf8d58b5bec53" - dependencies: - binaryextensions "2" - editions "^1.3.3" - textextensions "2" - -isurl@^1.0.0-alpha5: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67" - dependencies: - has-to-string-tag-x "^1.2.0" - is-object "^1.0.1" - js-sha3@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.3.1.tgz#86122802142f0828502a0d1dee1d95e253bb0243" @@ -3376,8 +2330,8 @@ js-tokens@^3.0.0, js-tokens@^3.0.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" js-yaml@^3.5.1: - version "3.10.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" + version "3.12.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -3386,46 +2340,6 @@ jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" -jscodeshift@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.4.1.tgz#da91a1c2eccfa03a3387a21d39948e251ced444a" - dependencies: - async "^1.5.0" - babel-plugin-transform-flow-strip-types "^6.8.0" - babel-preset-es2015 "^6.9.0" - babel-preset-stage-1 "^6.5.0" - babel-register "^6.9.0" - babylon "^6.17.3" - colors "^1.1.2" - flow-parser "^0.*" - lodash "^4.13.1" - micromatch "^2.3.7" - node-dir "0.1.8" - nomnom "^1.8.1" - recast "^0.12.5" - temp "^0.8.1" - write-file-atomic "^1.2.0" - -jscodeshift@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jscodeshift/-/jscodeshift-0.5.0.tgz#bdb7b6cc20dd62c16aa728c3fa2d2fe66ca7c748" - dependencies: - babel-plugin-transform-flow-strip-types "^6.8.0" - babel-preset-es2015 "^6.9.0" - babel-preset-stage-1 "^6.5.0" - babel-register "^6.9.0" - babylon "^7.0.0-beta.30" - colors "^1.1.2" - flow-parser "^0.*" - lodash "^4.13.1" - micromatch "^2.3.7" - neo-async "^2.5.0" - node-dir "0.1.8" - nomnom "^1.8.1" - recast "^0.14.1" - temp "^0.8.1" - write-file-atomic "^1.2.0" - jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" @@ -3434,10 +2348,6 @@ jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" -json-buffer@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" @@ -3460,7 +2370,7 @@ json-stringify-safe@*, json-stringify-safe@^5.0, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" -json5@^0.5.0, json5@^0.5.1: +json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -3511,29 +2421,13 @@ keypress@0.1.x: version "0.1.0" resolved "https://registry.yarnpkg.com/keypress/-/keypress-0.1.0.tgz#4a3188d4291b66b4f65edb99f806aa9ae293592a" -keyv@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373" - dependencies: - json-buffer "3.0.0" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: +kind-of@^3.0.2: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" dependencies: is-buffer "^1.1.5" -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - -kind-of@^6.0.0, kind-of@^6.0.2: +kind-of@^6.0.0: version "6.0.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" @@ -3564,53 +2458,6 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -listr-silent-renderer@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" - -listr-update-renderer@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz#344d980da2ca2e8b145ba305908f32ae3f4cc8a7" - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - elegant-spinner "^1.0.1" - figures "^1.7.0" - indent-string "^3.0.0" - log-symbols "^1.0.2" - log-update "^1.0.2" - strip-ansi "^3.0.1" - -listr-verbose-renderer@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" - dependencies: - chalk "^1.1.3" - cli-cursor "^1.0.2" - date-fns "^1.27.2" - figures "^1.7.0" - -listr@^0.14.1: - version "0.14.1" - resolved "https://registry.yarnpkg.com/listr/-/listr-0.14.1.tgz#8a7afa4a7135cee4c921d128e0b7dfc6e522d43d" - dependencies: - "@samverschueren/stream-to-observable" "^0.3.0" - cli-truncate "^0.2.1" - figures "^1.7.0" - indent-string "^2.1.0" - is-observable "^1.1.0" - is-promise "^2.1.0" - is-stream "^1.1.0" - listr-silent-renderer "^1.1.1" - listr-update-renderer "^0.4.0" - listr-verbose-renderer "^0.4.0" - log-symbols "^1.0.2" - log-update "^1.0.2" - ora "^0.2.3" - p-map "^1.1.1" - rxjs "^6.1.0" - strip-ansi "^3.0.1" - load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -3621,15 +2468,6 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -3639,14 +2477,6 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -3666,33 +2496,10 @@ lodash.toarray@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" -lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.4, lodash@^4.3.0: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - -lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.2: +lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.3.0: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - dependencies: - chalk "^1.0.0" - -log-symbols@^2.1.0, log-symbols@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" - dependencies: - chalk "^2.0.1" - -log-update@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" - dependencies: - ansi-escapes "^1.0.0" - cli-cursor "^1.0.2" - loose-envify@^1.0.0: version "1.3.1" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" @@ -3706,36 +2513,16 @@ loud-rejection@^1.2.0: currently-unhandled "^0.4.1" signal-exit "^3.0.0" -lowercase-keys@1.0.0, lowercase-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" - -lru-cache@2: - version "2.7.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" - lru-cache@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + version "4.1.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" dependencies: pseudomap "^1.0.2" yallist "^2.1.2" -make-dir@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - dependencies: - pify "^3.0.0" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - dependencies: - object-visit "^1.0.0" +math-random@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" md5.js@^1.3.4: version "1.3.4" @@ -3748,43 +2535,6 @@ media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" -mem-fs-editor@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/mem-fs-editor/-/mem-fs-editor-4.0.2.tgz#55a79b1e824da631254c4c95ba6366602c77af90" - dependencies: - commondir "^1.0.1" - deep-extend "^0.5.1" - ejs "^2.5.9" - glob "^7.0.3" - globby "^8.0.0" - isbinaryfile "^3.0.2" - mkdirp "^0.5.0" - multimatch "^2.0.0" - rimraf "^2.2.8" - through2 "^2.0.0" - vinyl "^2.0.1" - -mem-fs@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/mem-fs/-/mem-fs-1.1.3.tgz#b8ae8d2e3fcb6f5d3f9165c12d4551a065d989cc" - dependencies: - through2 "^2.0.0" - vinyl "^1.1.0" - vinyl-file "^2.0.0" - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - dependencies: - mimic-fn "^1.0.0" - -memory-fs@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - memorystream@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" @@ -3793,15 +2543,11 @@ merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" -merge2@^1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.2.tgz#03212e3da8d86c4d8523cebd6318193414f94e34" - methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" -micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7: +micromatch@^2.1.5, micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: @@ -3819,41 +2565,23 @@ micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7: parse-glob "^3.0.4" regex-cache "^0.4.2" -micromatch@^3.1.10: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -mime-db@~1.30.0: - version "1.30.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" - -mime-types@^2.1.12, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17, mime-types@~2.1.7: - version "2.1.17" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" - dependencies: - mime-db "~1.30.0" +mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18: + version "2.1.18" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + dependencies: + mime-db "~1.33.0" mime@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" mimic-fn@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" mimic-response@^1.0.0: version "1.0.0" @@ -3866,27 +2594,20 @@ min-document@^2.19.0: dom-walk "^0.1.0" minimalistic-assert@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" -minimatch@0.3: - version "0.3.0" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.3.0.tgz#275d8edaac4f1bb3326472089e7949c8394699dd" - dependencies: - lru-cache "2" - sigmund "~1.0.0" - minimatch@^2.0.1: version "2.0.10" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7" dependencies: brace-expansion "^1.0.0" -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: @@ -3896,22 +2617,24 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.1.0.tgz#99df657a52574c21c9057497df742790b2b4c0de" - minimist@^1.1.0, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" +minipass@^2.2.1, minipass@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.3.tgz#a7dcc8b7b833f5d368759cce544dccb55f50f233" dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" + safe-buffer "^5.1.2" + yallist "^3.0.0" -mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: +minizlib@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.0.tgz#11e13658ce46bc3a70a267aac58359d1e0c29ceb" + dependencies: + minipass "^2.2.1" + +mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -3939,8 +2662,8 @@ moment-timezone@~0.3.0: moment ">= 2.6.0" "moment@>= 2.6.0", moment@^2.12: - version "2.19.4" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.19.4.tgz#17e5e2c6ead8819c8ecfad83a0acccb312e94682" + version "2.22.2" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.22.2.tgz#3c257f9839fc0e93ff53149632239eb90783ff66" ms@0.7.1: version "0.7.1" @@ -3950,15 +2673,6 @@ ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -multimatch@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" - dependencies: - array-differ "^1.0.0" - array-union "^1.0.1" - arrify "^1.0.0" - minimatch "^3.0.0" - mute-stream@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" @@ -3967,11 +2681,7 @@ mute-stream@0.0.7, mute-stream@~0.0.4: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" -nan@^2.0.5, nan@^2.3.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" - -nan@^2.2.1: +nan@2.10.0, nan@^2.2.1, nan@^2.9.2: version "2.10.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f" @@ -3979,42 +2689,25 @@ nano-json-stream-parser@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f" -nanomatch@^1.2.9: - version "1.2.9" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-odd "^2.0.0" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" +needle@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.1.tgz#b5e325bd3aae8c2678902fa296f729455d1d3a7d" + dependencies: + debug "^2.1.2" + iconv-lite "^0.4.4" + sax "^1.2.4" + negotiator@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" -neo-async@^2.5.0: - version "2.5.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.5.1.tgz#acb909e327b1e87ec9ef15f41b8a269512ad41ee" - -nice-try@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.4.tgz#d93962f6c52f2c1558c0fbda6d512819f1efe1c4" - -node-dir@0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.8.tgz#55fb8deb699070707fb67f91a460f0448294c77d" +next-tick@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" node-emoji@^1.0.4: version "1.8.1" @@ -4022,21 +2715,20 @@ node-emoji@^1.0.4: dependencies: lodash.toarray "^4.4.0" -node-pre-gyp@^0.6.39: - version "0.6.39" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" +node-pre-gyp@^0.10.0: + version "0.10.2" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.2.tgz#e8945c20ef6795a20aac2b44f036eb13cf5146e3" dependencies: detect-libc "^1.0.2" - hawk "3.1.3" mkdirp "^0.5.1" + needle "^2.2.0" nopt "^4.0.1" + npm-packlist "^1.1.6" npmlog "^4.0.2" - rc "^1.1.7" - request "2.81.0" + rc "^1.2.7" rimraf "^2.6.1" semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" + tar "^4" nodegit-promise@~4.0.0: version "4.0.0" @@ -4044,13 +2736,6 @@ nodegit-promise@~4.0.0: dependencies: asap "~2.0.3" -nomnom@^1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.8.1.tgz#2151f722472ba79e50a76fc125bb8c8f2e4dc2a7" - dependencies: - chalk "~0.4.0" - underscore "~1.6.0" - nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -4073,19 +2758,16 @@ normalize-path@^2.0.0, normalize-path@^2.0.1: dependencies: remove-trailing-separator "^1.0.1" -normalize-url@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" - dependencies: - prepend-http "^2.0.0" - query-string "^5.0.1" - sort-keys "^2.0.0" +npm-bundled@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.3.tgz#7e71703d973af3370a9591bafe3a63aca0be2308" -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" +npm-packlist@^1.1.6: + version "1.1.10" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.10.tgz#1039db9e985727e464df066f4cf0ab6ef85c398a" dependencies: - path-key "^2.0.0" + ignore-walk "^3.0.1" + npm-bundled "^1.0.1" npmlog@^4.0.2: version "4.1.2" @@ -4114,51 +2796,30 @@ number-to-bn@1.7.0: bn.js "4.11.6" strip-hex-prefix "1.0.0" -oauth-sign@~0.8.1, oauth-sign@~0.8.2: +oauth-sign@~0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" -object-assign@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" - -object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: +object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-inspect@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-0.4.0.tgz#f5157c116c1455b243b06ee97703392c5ad89fec" - -object-keys@^1.0.10, object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" +object-keys@^1.0.11, object-keys@^1.0.8: + version "1.0.12" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" object-path@^0.11.2: version "0.11.4" resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.11.4.tgz#370ae752fbf37de3ea70a861c23bba8915691949" -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - dependencies: - isobject "^3.0.0" - object.assign@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc" + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" dependencies: define-properties "^1.1.2" - function-bind "^1.1.0" - object-keys "^1.0.10" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" object.omit@^2.0.0: version "2.0.1" @@ -4167,19 +2828,13 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - dependencies: - isobject "^3.0.1" - on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" dependencies: ee-first "1.1.1" -once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: @@ -4187,7 +2842,7 @@ once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: onetime@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" + resolved "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" onetime@^2.0.0: version "2.0.1" @@ -4206,15 +2861,6 @@ optionator@^0.8.2: type-check "~0.3.2" wordwrap "~1.0.0" -ora@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" - dependencies: - chalk "^1.1.1" - cli-cursor "^1.0.2" - cli-spinners "^0.1.2" - object-assign "^4.0.1" - original-require@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/original-require/-/original-require-1.0.1.tgz#0f130471584cd33511c5ec38c8d59213f9ac5e20" @@ -4229,14 +2875,6 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - os-shim@^0.1.2: version "0.1.3" resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917" @@ -4246,8 +2884,8 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" osenv@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.0" @@ -4260,35 +2898,11 @@ output-file-sync@^1.1.2: mkdirp "^0.5.1" object-assign "^4.1.0" -p-cancelable@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.3.0.tgz#b9e123800bcebb7ac13a479be195b507b98d30fa" - -p-cancelable@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.4.1.tgz#35f363d67d52081c8d9585e37bcceb7e0bbcb2a0" - -p-each-series@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71" - dependencies: - p-reduce "^1.0.0" - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - -p-lazy@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-lazy/-/p-lazy-1.0.0.tgz#ec53c802f2ee3ac28f166cc82d0b2b02de27a835" - p-limit@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + dependencies: + p-try "^1.0.0" p-locate@^2.0.0: version "2.0.0" @@ -4296,25 +2910,9 @@ p-locate@^2.0.0: dependencies: p-limit "^1.1.0" -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - -p-reduce@^1.0.0: +p-try@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" - -p-timeout@^1.1.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-1.2.1.tgz#5eb3b353b7fce99f101a1038880bb054ebbea386" - dependencies: - p-finally "^1.0.0" - -p-timeout@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" - dependencies: - p-finally "^1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" pako@~0.2.0: version "0.2.9" @@ -4349,22 +2947,10 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - parseurl@~1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - path-exists@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" @@ -4383,10 +2969,6 @@ path-is-inside@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - path-parse@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" @@ -4403,23 +2985,14 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - dependencies: - pify "^3.0.0" - peek-stream@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/peek-stream/-/peek-stream-1.1.2.tgz#97eb76365bcfd8c89e287f55c8b69d4c3e9bcc52" + version "1.1.3" + resolved "https://registry.yarnpkg.com/peek-stream/-/peek-stream-1.1.3.tgz#3b35d84b7ccbbd262fff31dc10da56856ead6d67" dependencies: + buffer-from "^1.0.0" duplexify "^3.5.0" through2 "^2.0.3" -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -4428,7 +3001,7 @@ pidusage@^1.0.1: version "1.2.0" resolved "https://registry.yarnpkg.com/pidusage/-/pidusage-1.2.0.tgz#65ee96ace4e08a4cd3f9240996c85b367171ee92" -pify@^2.0.0, pify@^2.3.0: +pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -4447,11 +3020,11 @@ pinkie@^2.0.0: resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" pkg-conf@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.0.0.tgz#071c87650403bccfb9c627f58751bfe47c067279" + version "2.1.0" + resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.1.0.tgz#2126514ca6f2abfebd168596df18ba57867f0058" dependencies: find-up "^2.0.0" - load-json-file "^2.0.0" + load-json-file "^4.0.0" pkg-config@^1.1.0: version "1.1.1" @@ -4467,12 +3040,6 @@ pkg-dir@^1.0.0: dependencies: find-up "^1.0.0" -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - dependencies: - find-up "^2.1.0" - pkg-up@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-1.0.0.tgz#3e08fb461525c4421624a33b9f7e6d0af5b05a26" @@ -4551,10 +3118,6 @@ pmx@^0.6: debug "^2.2" json-stringify-safe "^5.0" -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - pre-commit@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/pre-commit/-/pre-commit-1.2.2.tgz#dbcee0ee9de7235e57f79c56d7ce94641a69eec6" @@ -4567,38 +3130,18 @@ prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" -prepend-http@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - -prepend-http@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" -prettier@^1.12.1: - version "1.12.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.12.1.tgz#c1ad20e803e7749faf905a409d2367e06bbe7325" - -pretty-bytes@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9" - -private@^0.1.6, private@^0.1.7, private@~0.1.5: +private@^0.1.6, private@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" -process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: +process-nextick-args@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - process@~0.5.1: version "0.5.2" resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" @@ -4621,16 +3164,12 @@ proper-lockfile@^2.0.0: graceful-fs "^4.1.2" retry "^0.10.0" -proxy-addr@~2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec" +proxy-addr@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" dependencies: forwarded "~0.1.2" - ipaddr.js "1.5.2" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + ipaddr.js "1.6.0" pseudomap@^1.0.2: version "1.0.2" @@ -4643,31 +3182,32 @@ pump@^1.0.0: end-of-stream "^1.1.0" once "^1.3.1" +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + pumpify@^1.3.3: - version "1.3.5" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.3.5.tgz#1b671c619940abcaeac0ad0e3a3c164be760993b" + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" dependencies: - duplexify "^3.1.2" - inherits "^2.0.1" - pump "^1.0.0" + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" -qs@6.5.1, qs@~6.5.1: +qs@6.5.1: version "6.5.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" -qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - -query-string@^2.4.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-2.4.2.tgz#7db0666420804baa92ae9f268962855a76143dfb" - dependencies: - strict-uri-encode "^1.0.0" +qs@6.5.2, qs@~6.5.1: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" query-string@^5.0.1: version "5.1.1" @@ -4677,12 +3217,13 @@ query-string@^5.0.1: object-assign "^4.1.0" strict-uri-encode "^1.0.0" -randomatic@^1.1.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" +randomatic@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.0.0.tgz#d35490030eb4f7578de292ce6dfb04a91a128923" dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" + is-number "^4.0.0" + kind-of "^6.0.0" + math-random "^1.0.1" randomhex@0.1.5: version "0.1.5" @@ -4701,22 +3242,24 @@ raw-body@2.3.2: iconv-lite "0.4.19" unpipe "1.0.0" -rc@^1.1.7: - version "1.2.2" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077" +raw-body@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" dependencies: - deep-extend "~0.4.0" + bytes "3.0.0" + http-errors "1.6.3" + iconv-lite "0.4.23" + unpipe "1.0.0" + +rc@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + dependencies: + deep-extend "^0.6.0" ini "~1.3.0" minimist "^1.2.0" strip-json-comments "~2.0.1" -read-chunk@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/read-chunk/-/read-chunk-2.1.0.tgz#6a04c0928005ed9d42e1a6ac5600e19cbc7ff655" - dependencies: - pify "^3.0.0" - safe-buffer "^5.1.1" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -4724,13 +3267,6 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" -read-pkg-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" - dependencies: - find-up "^2.0.0" - read-pkg "^3.0.0" - read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" @@ -4739,33 +3275,13 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" - dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" - read@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" dependencies: mute-stream "~0.0.4" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - safe-buffer "~5.1.1" - string_decoder "~1.0.3" - util-deprecate "~1.0.1" - -readable-stream@^2.3.5: +readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.5: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" dependencies: @@ -4794,25 +3310,6 @@ readline2@^1.0.1: is-fullwidth-code-point "^1.0.0" mute-stream "0.0.5" -recast@^0.12.5: - version "0.12.9" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.12.9.tgz#e8e52bdb9691af462ccbd7c15d5a5113647a15f1" - dependencies: - ast-types "0.10.1" - core-js "^2.4.1" - esprima "~4.0.0" - private "~0.1.5" - source-map "~0.6.1" - -recast@^0.14.1: - version "0.14.7" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.14.7.tgz#4f1497c2b5826d42a66e8e3c9d80c512983ff61d" - dependencies: - ast-types "0.11.3" - esprima "~4.0.0" - private "~0.1.5" - source-map "~0.6.1" - rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -4820,8 +3317,8 @@ rechoir@^0.6.2: resolve "^1.1.6" regenerate@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" + version "1.4.0" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" regenerator-runtime@^0.10.5: version "0.10.5" @@ -4845,13 +3342,6 @@ regex-cache@^0.4.2: dependencies: is-equal-shallow "^0.1.3" -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" @@ -4878,7 +3368,7 @@ repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" -repeat-string@^1.5.2, repeat-string@^1.6.1: +repeat-string@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -4888,48 +3378,13 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -replace-ext@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" - -replace-ext@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - request-capture-har@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/request-capture-har/-/request-capture-har-1.2.2.tgz#cd692cfb2cc744fd84a3358aac6ee51528cf720d" -request@2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" - uuid "^3.0.0" - request@^2.79.0, request@^2.81.0: - version "2.83.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" + version "2.87.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" dependencies: aws-sign2 "~0.7.0" aws4 "^1.6.0" @@ -4939,7 +3394,6 @@ request@^2.79.0, request@^2.81.0: forever-agent "~0.6.1" form-data "~2.3.1" har-validator "~5.0.3" - hawk "~6.0.2" http-signature "~1.2.0" is-typedarray "~1.0.0" isstream "~0.1.2" @@ -4949,7 +3403,6 @@ request@^2.79.0, request@^2.81.0: performance-now "^2.1.0" qs "~6.5.1" safe-buffer "^5.1.1" - stringstream "~0.0.5" tough-cookie "~2.3.3" tunnel-agent "^0.6.0" uuid "^3.1.0" @@ -4973,43 +3426,16 @@ require-uncached@^1.0.2: caller-path "^0.1.0" resolve-from "^1.0.0" -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - dependencies: - resolve-from "^3.0.0" - -resolve-dir@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - resolve@^1.1.6, resolve@^1.1.7: - version "1.5.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36" + version "1.8.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" dependencies: path-parse "^1.0.5" -responselike@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - dependencies: - lowercase-keys "^1.0.0" - restore-cursor@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" @@ -5024,40 +3450,28 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" -resumer@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" - dependencies: - through "~2.3.4" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - retry@^0.10.0: version "0.10.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.0, rimraf@^2.5.1, rimraf@^2.6.1, rimraf@^2.6.2: +rimraf@^2.2.8, rimraf@^2.5.0, rimraf@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: glob "^7.0.5" -rimraf@~2.2.6: - version "2.2.8" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" - -ripemd160@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" dependencies: - hash-base "^2.0.0" + hash-base "^3.0.0" inherits "^2.0.1" rlp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.0.0.tgz#9db384ff4b89a8f61563d92395d8625b18f3afb0" + version "2.1.0" + resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.1.0.tgz#e4f9886d5a982174f314543831e36e1a658460f9" + dependencies: + safe-buffer "^5.1.1" run-async@^0.1.0: version "0.1.0" @@ -5065,15 +3479,15 @@ run-async@^0.1.0: dependencies: once "^1.3.0" -run-async@^2.0.0, run-async@^2.2.0: +run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" dependencies: is-promise "^2.1.0" run-parallel@^1.1.2: - version "1.1.6" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.6.tgz#29003c9a2163e01e2d2dfc90575f2c6c1d61a039" + version "1.1.9" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" rx-lite-aggregates@^4.0.8: version "4.0.8" @@ -5089,31 +3503,21 @@ rx-lite@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" -rxjs@^5.5.2: - version "5.5.11" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.11.tgz#f733027ca43e3bec6b994473be4ab98ad43ced87" - dependencies: - symbol-observable "1.0.1" - -rxjs@^6.1.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.2.0.tgz#e024d0e180b72756a83c2aaea8f25423751ba978" - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - dependencies: - ret "~0.1.10" +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" -scoped-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-1.0.0.tgz#a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8" +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + +sax@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" secp256k1@^3.0.1: version "3.5.0" @@ -5129,29 +3533,25 @@ secp256k1@^3.0.1: safe-buffer "^5.1.0" "semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0: - version "5.4.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" + version "5.5.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" semver@5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -semver@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - semver@~5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.1.1.tgz#a3292a373e6f3e0798da0b20641b9a9c5bc47e19" -send@0.16.1: - version "0.16.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" +send@0.16.2: + version "0.16.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" dependencies: debug "2.6.9" - depd "~1.1.1" + depd "~1.1.2" destroy "~1.0.4" - encodeurl "~1.0.1" + encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" @@ -5160,16 +3560,16 @@ send@0.16.1: ms "2.0.0" on-finished "~2.3.0" range-parser "~1.2.0" - statuses "~1.3.1" + statuses "~1.4.0" -serve-static@1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719" +serve-static@1.13.2: + version "1.13.2" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" dependencies: - encodeurl "~1.0.1" + encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.2" - send "0.16.1" + send "0.16.2" servify@^0.1.12: version "0.1.12" @@ -5189,24 +3589,6 @@ set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - setprototypeof@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" @@ -5216,17 +3598,17 @@ setprototypeof@1.1.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.9" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d" + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" dependencies: inherits "^2.0.1" safe-buffer "^5.0.1" sha3@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/sha3/-/sha3-1.2.0.tgz#6989f1b70a498705876a373e2c62ace96aa9399a" + version "1.2.2" + resolved "https://registry.yarnpkg.com/sha3/-/sha3-1.2.2.tgz#a66c5098de4c25bc88336ec8b4817d005bca7ba9" dependencies: - nan "^2.0.5" + nan "2.10.0" shebang-command@^1.2.0: version "1.2.0" @@ -5250,29 +3632,21 @@ shelljs@^0.7.5: interpret "^1.0.0" rechoir "^0.6.2" -shelljs@^0.8.0: - version "0.8.2" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.2.tgz#345b7df7763f4c2340d584abb532c5f752ca9e35" - dependencies: - glob "^7.0.0" - interpret "^1.0.0" - rechoir "^0.6.2" - -sigmund@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" - signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" -simple-get@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-1.4.3.tgz#e9755eda407e96da40c5e5158c9ea37b33becbeb" +simple-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" + +simple-get@^2.7.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d" dependencies: + decompress-response "^3.3.0" once "^1.3.1" - unzip-response "^1.0.0" - xtend "^4.0.0" + simple-concat "^1.0.0" slash@^1.0.0: version "1.0.0" @@ -5282,49 +3656,6 @@ slice-ansi@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" -slide@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - -sntp@2.x.x: - version "2.1.0" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" - dependencies: - hoek "4.x.x" - solc@0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/solc/-/solc-0.4.24.tgz#354f14b269b38cbaa82a47d1ff151723502b954e" @@ -5335,22 +3666,6 @@ solc@0.4.24: semver "^5.3.0" yargs "^4.7.1" -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - dependencies: - is-plain-obj "^1.0.0" - -source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - dependencies: - atob "^2.1.1" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - source-map-support@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.0.tgz#cb92292bc05455ce48691de545ac2690bb1cc976" @@ -5370,21 +3685,17 @@ source-map-support@^0.5.3: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - source-map@0.1.32: version "0.1.32" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" dependencies: amdefine ">=0.0.4" -source-map@^0.5.6: +source-map@^0.5.6, source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" -source-map@^0.6.0, source-map@~0.6.1: +source-map@^0.6.0: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -5395,38 +3706,41 @@ spawn-sync@^1.0.15: concat-stream "^1.4.7" os-shim "^0.1.2" -spdx-correct@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" +spdx-correct@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" dependencies: - spdx-license-ids "^1.0.2" - -spdx-expression-parse@~1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" -spdx-license-ids@^1.0.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" +spdx-exceptions@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" +spdx-expression-parse@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" dependencies: - extend-shallow "^3.0.0" + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" + version "1.14.2" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.2.tgz#c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" dashdash "^1.12.0" getpass "^0.1.1" + safer-buffer "^2.0.2" optionalDependencies: bcrypt-pbkdf "^1.0.0" ecc-jsbn "~0.1.1" @@ -5456,21 +3770,14 @@ standard@^10.0.3: eslint-plugin-standard "~3.0.1" standard-engine "~7.0.0" -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" +"statuses@>= 1.3.1 < 2", "statuses@>= 1.4.0 < 2": + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" -"statuses@>= 1.3.1 < 2": +statuses@~1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" -statuses@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - stream-shift@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" @@ -5479,11 +3786,7 @@ strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" -string-template@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" - -string-width@^1.0.1, string-width@^1.0.2: +string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" dependencies: @@ -5491,29 +3794,19 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: +"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string_decoder@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" - dependencies: - safe-buffer "~5.1.0" - string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" dependencies: safe-buffer "~5.1.0" -stringstream@~0.0.4, stringstream@~0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -5526,17 +3819,6 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-ansi@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991" - -strip-bom-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz#f87db5ef2613f6968aa545abfe1ec728b6a829ca" - dependencies: - first-chunk-stream "^2.0.0" - strip-bom "^2.0.0" - strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" @@ -5547,10 +3829,6 @@ strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - strip-hex-prefix@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" @@ -5571,26 +3849,12 @@ supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" -supports-color@^4.0.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - dependencies: - has-flag "^2.0.0" - -supports-color@^5.3.0, supports-color@^5.4.0: +supports-color@^5.3.0: version "5.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" dependencies: has-flag "^3.0.0" -symbol-observable@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" - -symbol-observable@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" - table@^3.7.8: version "3.8.3" resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" @@ -5602,92 +3866,55 @@ table@^3.7.8: slice-ansi "0.0.4" string-width "^2.0.0" -tapable@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.0.0.tgz#cbb639d9002eed9c6b5975eb20598d7936f1f9f2" - -tape@^3.0.3: - version "3.6.1" - resolved "https://registry.yarnpkg.com/tape/-/tape-3.6.1.tgz#4893dd53e280a5f58c0ceb30c2c0ebb3bcd51e1f" - dependencies: - deep-equal "~0.2.0" - defined "~0.0.0" - glob "~3.2.9" - inherits "~2.0.1" - object-inspect "~0.4.0" - resumer "~0.0.0" - through "~2.3.4" - tar-fs@^1.15.1: - version "1.16.0" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.0.tgz#e877a25acbcc51d8c790da1c57c9cf439817b896" + version "1.16.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.3.tgz#966a628841da2c4010406a82167cbd5e0c72d509" dependencies: chownr "^1.0.1" mkdirp "^0.5.1" pump "^1.0.0" tar-stream "^1.1.2" -tar-pack@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" - dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - tar-stream@^1.1.2, tar-stream@^1.5.2: - version "1.5.5" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.5.tgz#5cad84779f45c83b1f2508d96b09d88c7218af55" + version "1.6.1" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.1.tgz#f84ef1696269d6223ca48f6e1eeede3f7e81f395" dependencies: bl "^1.0.0" + buffer-alloc "^1.1.0" end-of-stream "^1.0.0" - readable-stream "^2.0.0" + fs-constants "^1.0.0" + readable-stream "^2.3.0" + to-buffer "^1.1.0" xtend "^4.0.0" -tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -temp@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" +tar@^4: + version "4.4.4" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.4.tgz#ec8409fae9f665a4355cc3b4087d0820232bb8cd" dependencies: - os-tmpdir "^1.0.0" - rimraf "~2.2.6" + chownr "^1.0.1" + fs-minipass "^1.2.5" + minipass "^2.3.3" + minizlib "^1.1.0" + mkdirp "^0.5.0" + safe-buffer "^5.1.2" + yallist "^3.0.2" -text-table@^0.2.0, text-table@~0.2.0: +text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" -textextensions@2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-2.2.0.tgz#38ac676151285b658654581987a0ce1a4490d286" - -through2@^2.0.0, through2@^2.0.3: +through2@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" dependencies: readable-stream "^2.1.5" xtend "~4.0.1" -through@^2.3.6, through@~2.3.4: +through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" -timed-out@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-2.0.0.tgz#f38b0ae81d3747d628001f41dafc652ace671c0a" - -timed-out@^4.0.0, timed-out@^4.0.1: +timed-out@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" @@ -5697,35 +3924,17 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" +to-buffer@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" + to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -tough-cookie@~2.3.0, tough-cookie@~2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" +tough-cookie@~2.3.3: + version "2.3.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" dependencies: punycode "^1.4.1" @@ -5745,14 +3954,6 @@ truffle@4.1.12: original-require "1.0.1" solc "0.4.24" -tryit@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" - -tslib@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.1.tgz#a5d1f0532a49221c87755cfcc89ca37197242ba7" - tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -5773,21 +3974,17 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@~1.6.15: - version "1.6.15" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" +type-is@~1.6.15, type-is@~1.6.16: + version "1.6.16" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" dependencies: media-typer "0.3.0" - mime-types "~2.1.15" + mime-types "~2.1.18" typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" @@ -5800,23 +3997,10 @@ underscore@1.8.3: version "1.8.3" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" -underscore@~1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz#8b38b10cacdef63337b8b24e4ff86d45aea529a8" - underscore@~1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" -union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - uniq@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" @@ -5825,51 +4009,10 @@ unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -untildify@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/untildify/-/untildify-3.0.3.tgz#1e7b42b140bcfd922b22e70ca1265bfe3634c7c9" - -unzip-response@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - -url-parse-lax@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - dependencies: - prepend-http "^1.0.1" - -url-parse-lax@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - dependencies: - prepend-http "^2.0.0" - url-set-query@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339" -url-to-options@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" - -use@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544" - dependencies: - kind-of "^6.0.2" - user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" @@ -5892,21 +4035,13 @@ utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" -uuid@^3.0.0, uuid@^3.0.1, uuid@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" - -uuid@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" +uuid@^3.0.1, uuid@^3.1.0, uuid@^3.2.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" v8-compile-cache@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-1.1.0.tgz#1dc2a340fb8e5f800a32bcdbfb8c23cd747021b9" - -v8-compile-cache@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.0.tgz#526492e35fc616864284700b7043e01baee09f0a" + version "1.1.2" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-1.1.2.tgz#8d32e4f16974654657e676e0e467a348e89b0dc4" v8flags@^2.1.1: version "2.1.1" @@ -5915,11 +4050,11 @@ v8flags@^2.1.1: user-home "^1.1.1" validate-npm-package-license@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" + version "3.0.3" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338" dependencies: - spdx-correct "~1.0.0" - spdx-expression-parse "~1.0.0" + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" vary@^1, vary@~1.1.2: version "1.1.2" @@ -5933,36 +4068,6 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -vinyl-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/vinyl-file/-/vinyl-file-2.0.0.tgz#a7ebf5ffbefda1b7d18d140fcb07b223efb6751a" - dependencies: - graceful-fs "^4.1.2" - pify "^2.3.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - strip-bom-stream "^2.0.0" - vinyl "^1.1.0" - -vinyl@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz#5c88036cf565e5df05558bfc911f8656df218884" - dependencies: - clone "^1.0.0" - clone-stats "^0.0.1" - replace-ext "0.0.1" - -vinyl@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.1.0.tgz#021f9c2cf951d6b939943c89eb5ee5add4fd924c" - dependencies: - clone "^2.1.1" - clone-buffer "^1.0.0" - clone-stats "^1.0.0" - cloneable-readable "^1.0.0" - remove-trailing-separator "^1.0.1" - replace-ext "^1.0.0" - vizion@^0.2: version "0.2.13" resolved "https://registry.yarnpkg.com/vizion/-/vizion-0.2.13.tgz#1314cdee2b34116f9f5b1248536f95dbfcd6ef5f" @@ -5985,68 +4090,27 @@ web3@^1.0.0-beta2: version "1.0.0-beta2" resolved "https://registry.yarnpkg.com/web3/-/web3-1.0.0-beta2.tgz#bde93e2b88c431673f25d81298221a1ec2b1a9ef" -webpack-addons@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/webpack-addons/-/webpack-addons-1.1.5.tgz#2b178dfe873fb6e75e40a819fa5c26e4a9bc837a" - dependencies: - jscodeshift "^0.4.0" - -webpack-cli@^2.0.9: - version "2.1.4" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-2.1.4.tgz#cab81e79249127384fb69b2fdfe2055f9c771b76" - dependencies: - chalk "^2.4.1" - cross-spawn "^6.0.5" - diff "^3.5.0" - enhanced-resolve "^4.0.0" - envinfo "^5.7.0" - glob-all "^3.1.0" - global-modules "^1.0.0" - got "^8.3.1" - import-local "^1.0.0" - inquirer "^5.2.0" - interpret "^1.1.0" - jscodeshift "^0.5.0" - listr "^0.14.1" - loader-utils "^1.1.0" - lodash "^4.17.10" - log-symbols "^2.2.0" - mkdirp "^0.5.1" - p-each-series "^1.0.0" - p-lazy "^1.0.0" - prettier "^1.12.1" - supports-color "^5.4.0" - v8-compile-cache "^2.0.0" - webpack-addons "^1.1.5" - yargs "^11.1.0" - yeoman-environment "^2.1.1" - yeoman-generator "^2.0.5" - which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - which@1.2.x: version "1.2.14" resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" dependencies: isexe "^2.0.0" -which@^1.2.14, which@^1.2.9: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" dependencies: isexe "^2.0.0" wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" dependencies: - string-width "^1.0.2" + string-width "^1.0.2 || 2" window-size@^0.2.0: version "0.2.0" @@ -6067,14 +4131,6 @@ wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" -write-file-atomic@^1.2.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f" - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - slide "^1.1.5" - write@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" @@ -6082,8 +4138,8 @@ write@^0.2.1: mkdirp "^0.5.1" ws@^3.0.0: - version "3.3.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.2.tgz#96c1d08b3fefda1d5c1e33700d3bfaa9be2d5608" + version "3.3.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" dependencies: async-limiter "~1.0.0" safe-buffer "~5.1.0" @@ -6096,27 +4152,27 @@ xhr-request-promise@^0.1.2: xhr-request "^1.0.1" xhr-request@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.0.1.tgz#83f08a4b20beec67a8c1c728e8102f4c9eecbdda" + version "1.1.0" + resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed" dependencies: - buffer-to-arraybuffer "0.0.2" - object-assign "^3.0.0" - query-string "^2.4.0" - simple-get "^1.4.3" - timed-out "^2.0.0" + buffer-to-arraybuffer "^0.0.5" + object-assign "^4.1.1" + query-string "^5.0.1" + simple-get "^2.7.0" + timed-out "^4.0.1" url-set-query "^1.0.0" xhr "^2.0.4" xhr@^2.0.4, xhr@^2.3.3: - version "2.4.0" - resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.4.0.tgz#e16e66a45f869861eeefab416d5eff722dc40993" + version "2.5.0" + resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.5.0.tgz#bed8d1676d5ca36108667692b74b316c496e49dd" dependencies: global "~4.3.0" is-function "^1.0.1" parse-headers "^2.0.0" xtend "^4.0.0" -xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: +xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" @@ -6128,6 +4184,10 @@ yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" +yallist@^3.0.0, yallist@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" + yamljs@0.2.7: version "0.2.7" resolved "https://registry.yarnpkg.com/yamljs/-/yamljs-0.2.7.tgz#84c7e20c790e3dbc711697fef8115b628584ad0c" @@ -6142,29 +4202,6 @@ yargs-parser@^2.4.1: camelcase "^3.0.0" lodash.assign "^4.0.6" -yargs-parser@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" - dependencies: - camelcase "^4.1.0" - -yargs@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^9.0.2" - yargs@^4.7.1: version "4.8.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" @@ -6184,12 +4221,6 @@ yargs@^4.7.1: y18n "^3.2.1" yargs-parser "^2.4.1" -yargs@~1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-1.2.6.tgz#9c7b4a82fd5d595b2bf17ab6dcc43135432fe34b" - dependencies: - minimist "^0.1.0" - yarn@^0.27: version "0.27.5" resolved "https://registry.yarnpkg.com/yarn/-/yarn-0.27.5.tgz#06fe67d8040802993f9f1e1923d671cbf9ead5d1" @@ -6229,56 +4260,6 @@ yarn@^0.27: v8-compile-cache "^1.1.0" validate-npm-package-license "^3.0.1" -yeoman-environment@^2.0.5, yeoman-environment@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/yeoman-environment/-/yeoman-environment-2.1.1.tgz#10a045f7fc4397873764882eae055a33e56ee1c5" - dependencies: - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^3.1.0" - diff "^3.3.1" - escape-string-regexp "^1.0.2" - globby "^8.0.1" - grouped-queue "^0.3.3" - inquirer "^5.2.0" - is-scoped "^1.0.0" - lodash "^4.17.10" - log-symbols "^2.1.0" - mem-fs "^1.1.0" - strip-ansi "^4.0.0" - text-table "^0.2.0" - untildify "^3.0.2" - -yeoman-generator@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/yeoman-generator/-/yeoman-generator-2.0.5.tgz#57b0b3474701293cc9ec965288f3400b00887c81" - dependencies: - async "^2.6.0" - chalk "^2.3.0" - cli-table "^0.3.1" - cross-spawn "^6.0.5" - dargs "^5.1.0" - dateformat "^3.0.3" - debug "^3.1.0" - detect-conflict "^1.0.0" - error "^7.0.2" - find-up "^2.1.0" - github-username "^4.0.0" - istextorbinary "^2.2.1" - lodash "^4.17.10" - make-dir "^1.1.0" - mem-fs-editor "^4.0.0" - minimist "^1.2.0" - pretty-bytes "^4.0.2" - read-chunk "^2.1.0" - read-pkg-up "^3.0.0" - rimraf "^2.6.2" - run-async "^2.0.0" - shelljs "^0.8.0" - text-table "^0.2.0" - through2 "^2.0.0" - yeoman-environment "^2.0.5" - zeppelin-solidity@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/zeppelin-solidity/-/zeppelin-solidity-1.3.0.tgz#066ab35d7e07510da391d1dbaaf319e0d06fcfc6" From 5a4302eab530a774a4feeea4eba1c110c0e7c1f5 Mon Sep 17 00:00:00 2001 From: Matheus Faria de Alencar Date: Sat, 7 Jul 2018 14:11:19 -0300 Subject: [PATCH 2/4] refactor: Function ordering, visibility and line length --- contracts/paratii/Avatar.sol | 19 ++++++++++---- contracts/paratii/PTIDistributor.sol | 38 ++++++++++++++++++++++++---- contracts/paratii/Registry.sol | 16 ++++++------ contracts/paratii/Sales.sol | 8 +++--- contracts/paratii/Videos.sol | 10 +++++++- contracts/paratii/Vouchers.sol | 4 +-- 6 files changed, 70 insertions(+), 25 deletions(-) diff --git a/contracts/paratii/Avatar.sol b/contracts/paratii/Avatar.sol index 215e350..226f698 100644 --- a/contracts/paratii/Avatar.sol +++ b/contracts/paratii/Avatar.sol @@ -48,7 +48,20 @@ contract Avatar is Ownable { } } - function isOnWhiteList(address _address) public constant returns(bool) { + function transferFrom( + address _from, + address _to, + uint256 _value + ) + public + onlyWhitelist + returns (bool) + { + ParatiiToken token = ParatiiToken(registry.getContract("ParatiiToken")); + return token.transferFrom(_from, _to, _value); + } + + function isOnWhiteList(address _address) public view returns(bool) { for (uint i = 0; i < whitelist.length; i++) { if (whitelist[i] == _address) { return true; @@ -57,8 +70,4 @@ contract Avatar is Ownable { return false; } - function transferFrom(address _from, address _to, uint256 _value) public onlyWhitelist returns (bool) { - ParatiiToken token = ParatiiToken(registry.getContract("ParatiiToken")); - return token.transferFrom(_from, _to, _value); - } } diff --git a/contracts/paratii/PTIDistributor.sol b/contracts/paratii/PTIDistributor.sol index cf4cb6a..bcf5a7d 100644 --- a/contracts/paratii/PTIDistributor.sol +++ b/contracts/paratii/PTIDistributor.sol @@ -20,8 +20,17 @@ contract PTIDistributor is Ownable { registry = _registry; } - - function distribute(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public { + function distribute( + address _toAddress, + uint256 _amount, + bytes32 _salt, + string _reason, + uint8 _v, + bytes32 _r, + bytes32 _s + ) + public + { bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); bytes memory prefix = "\x19Ethereum Signed Message:\n32"; bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, message)); @@ -32,19 +41,38 @@ contract PTIDistributor is Ownable { emit LogDistribute(_toAddress, _amount, _reason); } - function checkOwnerPacked(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public { + function checkOwnerPacked( + address _toAddress, + uint256 _amount, + bytes32 _salt, + string _reason, + uint8 _v, + bytes32 _r, + bytes32 _s + ) + public + pure + { bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); bytes memory prefix = "\x19Ethereum Signed Message:\n32"; bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, message)); emit LogDebugOwner(ecrecover(prefixedHash, _v, _r, _s)); } - function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) public pure returns (address) { + + function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) + public + pure + returns (address) + { bytes memory prefix = "\x19Ethereum Signed Message:\n32"; bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, _hash)); return ecrecover(prefixedHash, _v, _r, _s); } - function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) public { + function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) + public + pure + { bytes32 hashing = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); emit LogDebug(hashing); } diff --git a/contracts/paratii/Registry.sol b/contracts/paratii/Registry.sol index ab27fd7..e9284ed 100644 --- a/contracts/paratii/Registry.sol +++ b/contracts/paratii/Registry.sol @@ -33,10 +33,6 @@ contract Registry is Ownable { emit LogUnregisterAddress(_name); } - function getContract(string _name) public view returns(address) { - return contracts[keccak256(abi.encodePacked(_name))]; - } - function registerUint(string _name, uint _number) public onlyOwner { numbers[keccak256(abi.encodePacked(_name))] = _number; emit LogRegisterUint(_name, _number); @@ -47,10 +43,6 @@ contract Registry is Ownable { emit LogUnregisterUint(_name); } - function getUint(string _name) public view returns(uint) { - return numbers[keccak256(abi.encodePacked(_name))]; - } - function registerString(string _name, string _string) public onlyOwner { strings[keccak256(abi.encodePacked(_name))] = _string; emit LogRegisterString(_name, _string); @@ -61,6 +53,14 @@ contract Registry is Ownable { emit LogUnregisterString(_name); } + function getContract(string _name) public view returns(address) { + return contracts[keccak256(abi.encodePacked(_name))]; + } + + function getUint(string _name) public view returns(uint) { + return numbers[keccak256(abi.encodePacked(_name))]; + } + function getString(string _name) public view returns(string) { return strings[keccak256(abi.encodePacked(_name))]; } diff --git a/contracts/paratii/Sales.sol b/contracts/paratii/Sales.sol index 9c35191..8f041cd 100644 --- a/contracts/paratii/Sales.sol +++ b/contracts/paratii/Sales.sol @@ -14,7 +14,6 @@ contract Sales is Ownable { string _ipfsData; } - // mapping from user addrsses and video ids to booleans mapping (address=> mapping (bytes32 => Data)) private _sales; @@ -41,7 +40,9 @@ contract Sales is Ownable { * @param _ipfsData a reference to further data that can be found on ipfs */ function create(address _buyer, string _videoId, uint _price, string _ipfsData) - public onlyOwnerOrStore { + public + onlyOwnerOrStore + { _sales[_buyer][keccak256(abi.encodePacked(_videoId))] = Data(true, _price, _ipfsData); emit LogCreateSale(_buyer, _videoId, _price, _ipfsData); } @@ -50,8 +51,7 @@ contract Sales is Ownable { * @dev Remove the sale from the registry * Only the Store contract or the owner can remove a sale */ - function remove(address _buyer, string _videoId) - public onlyOwnerOrStore { + function remove(address _buyer, string _videoId) public onlyOwnerOrStore { delete _sales[_buyer][keccak256(abi.encodePacked(_videoId))]; emit LogRemoveSale(_buyer, _videoId); } diff --git a/contracts/paratii/Videos.sol b/contracts/paratii/Videos.sol index d29d5b4..d33d91d 100644 --- a/contracts/paratii/Videos.sol +++ b/contracts/paratii/Videos.sol @@ -106,6 +106,14 @@ contract Videos is Ownable { returns(address, uint256, string, string, string, address) { VideoInfo storage videoInfo = videos[keccak256(abi.encodePacked(_videoId))]; - return (videoInfo.owner, videoInfo.price, videoInfo.ipfsHashOrig, videoInfo.ipfsHash, videoInfo.ipfsData, videoInfo.registrar); + + return ( + videoInfo.owner, + videoInfo.price, + videoInfo.ipfsHashOrig, + videoInfo.ipfsHash, + videoInfo.ipfsData, + videoInfo.registrar + ); } } diff --git a/contracts/paratii/Vouchers.sol b/contracts/paratii/Vouchers.sol index cd038a0..a693ade 100644 --- a/contracts/paratii/Vouchers.sol +++ b/contracts/paratii/Vouchers.sol @@ -43,13 +43,13 @@ contract Vouchers is Ownable { emit LogRemoveVoucher(_hashedVoucher); } - /* A convenience function that hashes teh voucher, to be call"ed locally */ + /* A convenience function that hashes the voucher, to be called locally */ function hashVoucher(string _voucher) public pure returns(bytes32 _hashedVoucher) { return keccak256(abi.encodePacked(_voucher)); } /* - * redeem the Voucher + * Redeem the Voucher. UNTRUSTED. * NOTE: This _is_ vulnerable to front-running attacks (the attacker can intercept the transaction, extract the voucher, and redeem it himself) */ From 1003b35339902bfc9f5ff813c7e209553f4493bf Mon Sep 17 00:00:00 2001 From: Matheus Faria de Alencar Date: Sat, 7 Jul 2018 14:17:29 -0300 Subject: [PATCH 3/4] fix: Function incorrectly marked as pure --- build/contracts/Avatar.json | 2 +- build/contracts/Likes.json | 2 +- build/contracts/PTIDistributor.json | 2 +- build/contracts/Registry.json | 2 +- build/contracts/Sales.json | 2 +- build/contracts/Store.json | 2 +- build/contracts/TcrPlaceholder.json | 2 +- build/contracts/Users.json | 2 +- build/contracts/Videos.json | 2 +- build/contracts/Views.json | 2 +- build/contracts/Vouchers.json | 2 +- contracts/paratii/PTIDistributor.sol | 10 ++++------ 12 files changed, 15 insertions(+), 17 deletions(-) diff --git a/build/contracts/Avatar.json b/build/contracts/Avatar.json index 6f03193..e9fe792 100644 --- a/build/contracts/Avatar.json +++ b/build/contracts/Avatar.json @@ -1 +1 @@ -{"contractName":"Avatar","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"whitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"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"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addToWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeFromWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isOnWhiteList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610ca483398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ba0806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820118f8a1c9f7f0637cd665e39433b57da14db8bc38b602ee00aa16e2dc904c3300029"} \ No newline at end of file +{"contractName":"Avatar","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"whitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"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"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addToWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeFromWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isOnWhiteList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610ca483398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ba0806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582046ec78906a239ea3a717f04c6026c587fdfc84fe7904aafad788c3a35515fea10029"} \ No newline at end of file diff --git a/build/contracts/Likes.json b/build/contracts/Likes.json index 2644c5e..63149f8 100644 --- a/build/contracts/Likes.json +++ b/build/contracts/Likes.json @@ -1 +1 @@ -{"contractName":"Likes","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_liked","type":"bool"}],"name":"LogLikeVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_liked","type":"bool"}],"name":"likeVideo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userLikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userDislikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137a83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611276806101046000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bdc565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d1a565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610e0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e32565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f70565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fb9565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f5565b005b600080600080339350856040516020018082805190602001908083835b6020831015156104d957805182526020820191506020810190506020830392506104b4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610542578051825260208201915060208101905060208303925061051d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061057b8487610bdc565b91506105878487610e32565b90508480156105935750815b1561059d57610bd4565b841580156105a85750805b156105b257610bd4565b841561086e576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610791576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610831578082015181840152602081019050610816565b50505050905090810190601f16801561085e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610bd3576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600760008560001916600019168152602001908152602001600020600082825401925050819055508115610a4e576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610aee578082015181840152602081019050610ad3565b50505050905090810190601f168015610b1b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610c585780518252602082019150602081019050602083039250610c33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610cc15780518252602082019150602081019050602083039250610c9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040516020018082805190602001908083835b602083101515610d595780518252602082019150602081019050602083039250610d34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610dc25780518252602082019150602081019050602083039250610d9d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610eae5780518252602082019150602081019050602083039250610e89565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f175780518252602082019150602081019050602083039250610ef2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040516020018082805190602001908083835b602083101515610ff85780518252602082019150602081019050602083039250610fd3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611061578051825260208201915060208101905060208303925061103c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820e5d6c4125f0949c5038854b94f14a67bef35aee9eb1f7822366bf15e783727c10029"} \ No newline at end of file +{"contractName":"Likes","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_liked","type":"bool"}],"name":"LogLikeVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_liked","type":"bool"}],"name":"likeVideo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userLikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userDislikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137a83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611276806101046000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bdc565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d1a565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610e0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e32565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f70565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fb9565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f5565b005b600080600080339350856040516020018082805190602001908083835b6020831015156104d957805182526020820191506020810190506020830392506104b4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610542578051825260208201915060208101905060208303925061051d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061057b8487610bdc565b91506105878487610e32565b90508480156105935750815b1561059d57610bd4565b841580156105a85750805b156105b257610bd4565b841561086e576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610791576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610831578082015181840152602081019050610816565b50505050905090810190601f16801561085e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610bd3576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600760008560001916600019168152602001908152602001600020600082825401925050819055508115610a4e576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610aee578082015181840152602081019050610ad3565b50505050905090810190601f168015610b1b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610c585780518252602082019150602081019050602083039250610c33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610cc15780518252602082019150602081019050602083039250610c9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040516020018082805190602001908083835b602083101515610d595780518252602082019150602081019050602083039250610d34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610dc25780518252602082019150602081019050602083039250610d9d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610eae5780518252602082019150602081019050602083039250610e89565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f175780518252602082019150602081019050602083039250610ef2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040516020018082805190602001908083835b602083101515610ff85780518252602082019150602081019050602083039250610fd3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611061578051825260208201915060208101905060208303925061103c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582019d3ccba40ef6eb90ba034aeaa666d698ea7528202491f500892941061256e7d0029"} \ No newline at end of file diff --git a/build/contracts/PTIDistributor.json b/build/contracts/PTIDistributor.json index 98e7b7c..e854721 100644 --- a/build/contracts/PTIDistributor.json +++ b/build/contracts/PTIDistributor.json @@ -1 +1 @@ -{"contractName":"PTIDistributor","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"isUsed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistribute","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistributeTransferable","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashing","type":"bytes32"}],"name":"LogDebug","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_owner","type":"address"}],"name":"LogDebugOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"distribute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwnerPacked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_hash","type":"bytes32"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"}],"name":"checkHashing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061144083398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061133c806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b41565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610cb5565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610fef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119b565b005b34801561045f57600080fd5b5061048260048036038101908080356000191690602001909291905050506112f0565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057f578051825260208201915060208101905060208303925061055a565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156105eb57805182526020820191506020810190506020830392506105c6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040516020018083805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561070457805182526020820191506020810190506020830392506106df565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561083557506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610813573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561084057600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561093657600080fd5b505af115801561094a573d6000803e3d6000fd5b505050506040513d602081101561096057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a1657600080fd5b505af1158015610a2a573d6000803e3d6000fd5b505050506040513d6020811015610a4057600080fd5b81019080805190602001909291905050501515610a5c57600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af8578082015181840152602081019050610add565b50505050905090810190601f168015610b255780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610bd45780518252602082019150602081019050602083039250610baf565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610c405780518252602082019150602081019050602083039250610c1b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610d4c5780518252602082019150602081019050602083039250610d27565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610db85780518252602082019150602081019050602083039250610d93565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040516020018083805190602001908083835b602083101515610e595780518252602082019150602081019050602083039250610e34565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610ed15780518252602082019150602081019050602083039250610eac565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610f98573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040516020018083805190602001908083835b6020831015156110675780518252602082019150602081019050602083039250611042565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b6020831015156110df57805182526020820191506020810190506020830392506110ba565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015611185573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561123257600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a72305820d34ceeb25ecf9e1d8958a022a4af7e4dbd072ef329fb6f86213241c0bedf53010029"} \ No newline at end of file +{"contractName":"PTIDistributor","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"isUsed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistribute","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistributeTransferable","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashing","type":"bytes32"}],"name":"LogDebug","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_owner","type":"address"}],"name":"LogDebugOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"distribute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwnerPacked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_hash","type":"bytes32"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"}],"name":"checkHashing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061144083398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061133c806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b41565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610cb5565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610fef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119b565b005b34801561045f57600080fd5b5061048260048036038101908080356000191690602001909291905050506112f0565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057f578051825260208201915060208101905060208303925061055a565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156105eb57805182526020820191506020810190506020830392506105c6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040516020018083805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561070457805182526020820191506020810190506020830392506106df565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561083557506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610813573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561084057600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561093657600080fd5b505af115801561094a573d6000803e3d6000fd5b505050506040513d602081101561096057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a1657600080fd5b505af1158015610a2a573d6000803e3d6000fd5b505050506040513d6020811015610a4057600080fd5b81019080805190602001909291905050501515610a5c57600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af8578082015181840152602081019050610add565b50505050905090810190601f168015610b255780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610bd45780518252602082019150602081019050602083039250610baf565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610c405780518252602082019150602081019050602083039250610c1b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610d4c5780518252602082019150602081019050602083039250610d27565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610db85780518252602082019150602081019050602083039250610d93565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040516020018083805190602001908083835b602083101515610e595780518252602082019150602081019050602083039250610e34565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610ed15780518252602082019150602081019050602083039250610eac565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610f98573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040516020018083805190602001908083835b6020831015156110675780518252602082019150602081019050602083039250611042565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b6020831015156110df57805182526020820191506020810190506020830392506110ba565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015611185573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561123257600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a72305820fda721176d601968febf2e35c25b42101aae049c25d911c11d5d0195176375590029"} \ No newline at end of file diff --git a/build/contracts/Registry.json b/build/contracts/Registry.json index 55e5566..5abb321 100644 --- a/build/contracts/Registry.json +++ b/build/contracts/Registry.json @@ -1 +1 @@ -{"contractName":"Registry","abi":[{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"strings","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"numbers","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"contracts","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":false,"name":"_name","type":"string"},{"indexed":false,"name":"_address","type":"address"}],"name":"LogRegisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_number","type":"uint256"}],"name":"LogRegisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_string","type":"string"}],"name":"LogRegisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_address","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_number","type":"uint256"}],"name":"registerUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getUint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_string","type":"string"}],"name":"registerString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getString","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611b66806100a06000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ad6565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cbd565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610db0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610e60565b005b3480156103f657600080fd5b506103ff611051565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611076565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611265565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f0565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611647565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506118ad565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506118c5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118f8565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040516020018082805190602001908083835b6020831015156108555780518252602082019150602081019050602083039250610830565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156108be5780518252602082019150602081019050602083039250610899565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561098657808201518184015260208101905061096b565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040516020018082805190602001908083835b602083101515610a0257805182526020820191506020810190506020830392506109dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610a6b5780518252602082019150602081019050602083039250610a46565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b3157600080fd5b60026000826040516020018082805190602001908083835b602083101515610b6e5780518252602082019150602081019050602083039250610b49565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610bd75780518252602082019150602081019050602083039250610bb2565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c80578082015181840152602081019050610c65565b50505050905090810190601f168015610cad5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040516020018082805190602001908083835b602083101515610cfc5780518252602082019150602081019050602083039250610cd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d655780518252602082019150602081019050602083039250610d40565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e585780601f10610e2d57610100808354040283529160200191610e58565b820191906000526020600020905b815481529060010190602001808311610e3b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ebb57600080fd5b8060026000846040516020018082805190602001908083835b602083101515610ef95780518252602082019150602081019050602083039250610ed4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f625780518252602082019150602081019050602083039250610f3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611012578082015181840152602081019050610ff7565b50505050905090810190601f16801561103f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d157600080fd5b60036000826040516020018082805190602001908083835b60208310151561110e57805182526020820191506020810190506020830392506110e9565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111775780518252602082019150602081019050602083039250611152565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006111c69190611a4d565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561122857808201518184015260208101905061120d565b50505050905090810190601f1680156112555780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040516020018082805190602001908083835b6020831015156112a4578051825260208201915060208101905060208303925061127f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130d57805182526020820191506020810190506020830392506112e8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e45780601f106113b9576101008083540402835291602001916113e4565b820191906000526020600020905b8154815290600101906020018083116113c757829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144b57600080fd5b8060016000846040516020018082805190602001908083835b6020831015156114895780518252602082019150602081019050602083039250611464565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156114f257805182526020820191506020810190506020830392506114cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156116085780820151818401526020810190506115ed565b50505050905090810190601f1680156116355780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116a257600080fd5b8060036000846040516020018082805190602001908083835b6020831015156116e057805182526020820191506020810190506020830392506116bb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156117495780518252602082019150602081019050602083039250611724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020908051906020019061179f929190611a95565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156118075780820151818401526020810190506117ec565b50505050905090810190601f1680156118345780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b8381101561186d578082015181840152602081019050611852565b50505050905090810190601f16801561189a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561198f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10611a735750611a92565b601f016020900490600052602060002090810190611a919190611b15565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad657805160ff1916838001178555611b04565b82800160010185558215611b04579182015b82811115611b03578251825591602001919060010190611ae8565b5b509050611b119190611b15565b5090565b611b3791905b80821115611b33576000816000905550600101611b1b565b5090565b905600a165627a7a72305820358bc0ec1097ca4e091e56ea95fe10c8a3cc3e5fd223f4ad5863d418524dff680029"} \ No newline at end of file +{"contractName":"Registry","abi":[{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"strings","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"numbers","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"contracts","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":false,"name":"_name","type":"string"},{"indexed":false,"name":"_address","type":"address"}],"name":"LogRegisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_number","type":"uint256"}],"name":"LogRegisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_string","type":"string"}],"name":"LogRegisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_address","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_number","type":"uint256"}],"name":"registerUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_string","type":"string"}],"name":"registerString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getUint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getString","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611b66806100a06000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ad6565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cbd565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610db0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610e60565b005b3480156103f657600080fd5b506103ff611051565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611076565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611265565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f0565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611647565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506118ad565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506118c5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118f8565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040516020018082805190602001908083835b6020831015156108555780518252602082019150602081019050602083039250610830565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156108be5780518252602082019150602081019050602083039250610899565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561098657808201518184015260208101905061096b565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040516020018082805190602001908083835b602083101515610a0257805182526020820191506020810190506020830392506109dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610a6b5780518252602082019150602081019050602083039250610a46565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b3157600080fd5b60026000826040516020018082805190602001908083835b602083101515610b6e5780518252602082019150602081019050602083039250610b49565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610bd75780518252602082019150602081019050602083039250610bb2565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c80578082015181840152602081019050610c65565b50505050905090810190601f168015610cad5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040516020018082805190602001908083835b602083101515610cfc5780518252602082019150602081019050602083039250610cd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d655780518252602082019150602081019050602083039250610d40565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e585780601f10610e2d57610100808354040283529160200191610e58565b820191906000526020600020905b815481529060010190602001808311610e3b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ebb57600080fd5b8060026000846040516020018082805190602001908083835b602083101515610ef95780518252602082019150602081019050602083039250610ed4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f625780518252602082019150602081019050602083039250610f3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611012578082015181840152602081019050610ff7565b50505050905090810190601f16801561103f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d157600080fd5b60036000826040516020018082805190602001908083835b60208310151561110e57805182526020820191506020810190506020830392506110e9565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111775780518252602082019150602081019050602083039250611152565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006111c69190611a4d565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561122857808201518184015260208101905061120d565b50505050905090810190601f1680156112555780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040516020018082805190602001908083835b6020831015156112a4578051825260208201915060208101905060208303925061127f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130d57805182526020820191506020810190506020830392506112e8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e45780601f106113b9576101008083540402835291602001916113e4565b820191906000526020600020905b8154815290600101906020018083116113c757829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144b57600080fd5b8060016000846040516020018082805190602001908083835b6020831015156114895780518252602082019150602081019050602083039250611464565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156114f257805182526020820191506020810190506020830392506114cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156116085780820151818401526020810190506115ed565b50505050905090810190601f1680156116355780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116a257600080fd5b8060036000846040516020018082805190602001908083835b6020831015156116e057805182526020820191506020810190506020830392506116bb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156117495780518252602082019150602081019050602083039250611724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020908051906020019061179f929190611a95565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156118075780820151818401526020810190506117ec565b50505050905090810190601f1680156118345780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b8381101561186d578082015181840152602081019050611852565b50505050905090810190601f16801561189a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561198f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10611a735750611a92565b601f016020900490600052602060002090810190611a919190611b15565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad657805160ff1916838001178555611b04565b82800160010185558215611b04579182015b82811115611b03578251825591602001919060010190611ae8565b5b509050611b119190611b15565b5090565b611b3791905b80821115611b33576000816000905550600101611b1b565b5090565b905600a165627a7a723058209b96bfa2e0ad484ae984a7a5cf631e36010b311e0d06bac751215e8197952b380029"} \ No newline at end of file diff --git a/build/contracts/Sales.json b/build/contracts/Sales.json index b5cabcc..c307373 100644 --- a/build/contracts/Sales.json +++ b/build/contracts/Sales.json @@ -1 +1 @@ -{"contractName":"Sales","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_price","type":"uint256"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_price","type":"uint256"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"uint256"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userBoughtVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137f83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061127b806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b5061012661083b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d610861565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610886565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c7565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e2e565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f83565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106f557805182526020820191506020810190506020830392506106d0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006107659190611162565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107fc5780820151818401526020810190506107e1565b50505050905090810190601f1680156108295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b60208310151561090257805182526020820191506020810190506020830392506108dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561096b5780518252602082019150602081019050602083039250610946565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b495750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610adf57600080fd5b505af1158015610af3573d6000803e3d6000fd5b505050506040513d6020811015610b0957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b5457600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b602083101515610bed5780518252602082019150602081019050602083039250610bc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610c565780518252602082019150602081019050602083039250610c31565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610cdf9291906111aa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610d84578082015181840152602081019050610d69565b50505050905090810190601f168015610db15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610dea578082015181840152602081019050610dcf565b50505050905090810190601f168015610e175780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e8957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ec557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156110035780518252602082019150602081019050602083039250610fde565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561106c5780518252602082019150602081019050602083039250611047565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061118857506111a7565b601f0160209004906000526020600020908101906111a6919061122a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111eb57805160ff1916838001178555611219565b82800160010185558215611219579182015b828111156112185782518255916020019190600101906111fd565b5b509050611226919061122a565b5090565b61124c91905b80821115611248576000816000905550600101611230565b5090565b905600a165627a7a723058201aaddd84b18f5fe6856afbd2c787b8b73d1bd4cf7bdb59f0e6335c5734f0708b0029"} \ No newline at end of file +{"contractName":"Sales","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_price","type":"uint256"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_price","type":"uint256"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"uint256"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userBoughtVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137f83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061127b806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b5061012661083b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d610861565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610886565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c7565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e2e565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f83565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106f557805182526020820191506020810190506020830392506106d0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006107659190611162565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107fc5780820151818401526020810190506107e1565b50505050905090810190601f1680156108295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b60208310151561090257805182526020820191506020810190506020830392506108dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561096b5780518252602082019150602081019050602083039250610946565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b495750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610adf57600080fd5b505af1158015610af3573d6000803e3d6000fd5b505050506040513d6020811015610b0957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b5457600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b602083101515610bed5780518252602082019150602081019050602083039250610bc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610c565780518252602082019150602081019050602083039250610c31565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610cdf9291906111aa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610d84578082015181840152602081019050610d69565b50505050905090810190601f168015610db15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610dea578082015181840152602081019050610dcf565b50505050905090810190601f168015610e175780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e8957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ec557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156110035780518252602082019150602081019050602083039250610fde565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561106c5780518252602082019150602081019050602083039250611047565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061118857506111a7565b601f0160209004906000526020600020908101906111a6919061122a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111eb57805160ff1916838001178555611219565b82800160010185558215611219579182015b828111156112185782518255916020019190600101906111fd565b5b509050611226919061122a565b5090565b61124c91905b80821115611248576000816000905550600101611230565b5090565b905600a165627a7a72305820450d89f5e64013e9b23ed0bb511500af9595a052e09f299014802aae8bbcbb5a0029"} \ No newline at end of file diff --git a/build/contracts/Store.json b/build/contracts/Store.json index 9744fd5..d17eb02 100644 --- a/build/contracts/Store.json +++ b/build/contracts/Store.json @@ -1 +1 @@ -{"contractName":"Store","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sales","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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_price","type":"uint256"}],"name":"LogBuyVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"address"}],"name":"LogAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"int256"}],"name":"LogInt","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"string"}],"name":"LogString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"uint256"}],"name":"LogUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes"}],"name":"LogBytes","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes32"}],"name":"LogBytes32","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bool"}],"name":"LogBool","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"videoId","type":"string"},{"name":"ipfsData","type":"string"}],"name":"buyVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806110e383398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061101f806100c46000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cc2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610ce8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d33565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b505092919060200180519060200190929190505050809850819950829a50839b50849c50859d50505050505050610709670de0b6b3a76400006106fb6106ec610e88565b8a610f8c90919063ffffffff16565b610fbf90919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107e257600080fd5b505af11580156107f6573d6000803e3d6000fd5b505050506040513d602081101561080c57600080fd5b8101908080519060200190929190505050506108318288610fda90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561090a57600080fd5b505af115801561091e573d6000803e3d6000fd5b505050506040513d602081101561093457600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0857600080fd5b505af1158015610a1c573d6000803e3d6000fd5b505050506040513d6020811015610a3257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610b09578082015181840152602081019050610aee565b50505050905090810190601f168015610b365780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b6f578082015181840152602081019050610b54565b50505050905090810190601f168015610b9c5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bbf57600080fd5b505af1158015610bd3573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c73578082015181840152602081019050610c58565b50505050905090810190601f168015610ca05780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dca57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4c57600080fd5b505af1158015610f60573d6000803e3d6000fd5b505050506040513d6020811015610f7657600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fad5750828482811515610faa57fe5b04145b1515610fb557fe5b8091505092915050565b6000808284811515610fcd57fe5b0490508091505092915050565b6000828211151515610fe857fe5b8183039050929150505600a165627a7a7230582090687df2b2e59250c0354d1b3cb9fc8cd998b1679d1f5efc2e17efe9b48545410029"} \ No newline at end of file +{"contractName":"Store","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sales","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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_price","type":"uint256"}],"name":"LogBuyVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"address"}],"name":"LogAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"int256"}],"name":"LogInt","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"string"}],"name":"LogString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"uint256"}],"name":"LogUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes"}],"name":"LogBytes","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes32"}],"name":"LogBytes32","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bool"}],"name":"LogBool","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"videoId","type":"string"},{"name":"ipfsData","type":"string"}],"name":"buyVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806110e383398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061101f806100c46000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cc2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610ce8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d33565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b505092919060200180519060200190929190505050809850819950829a50839b50849c50859d50505050505050610709670de0b6b3a76400006106fb6106ec610e88565b8a610f8c90919063ffffffff16565b610fbf90919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107e257600080fd5b505af11580156107f6573d6000803e3d6000fd5b505050506040513d602081101561080c57600080fd5b8101908080519060200190929190505050506108318288610fda90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561090a57600080fd5b505af115801561091e573d6000803e3d6000fd5b505050506040513d602081101561093457600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0857600080fd5b505af1158015610a1c573d6000803e3d6000fd5b505050506040513d6020811015610a3257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610b09578082015181840152602081019050610aee565b50505050905090810190601f168015610b365780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b6f578082015181840152602081019050610b54565b50505050905090810190601f168015610b9c5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bbf57600080fd5b505af1158015610bd3573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c73578082015181840152602081019050610c58565b50505050905090810190601f168015610ca05780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dca57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4c57600080fd5b505af1158015610f60573d6000803e3d6000fd5b505050506040513d6020811015610f7657600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fad5750828482811515610faa57fe5b04145b1515610fb557fe5b8091505092915050565b6000808284811515610fcd57fe5b0490508091505092915050565b6000828211151515610fe857fe5b8183039050929150505600a165627a7a72305820ff5ec5130047fffaad411e91d105f892c41175efc0e23c54a1ae9f73e83e36c20029"} \ No newline at end of file diff --git a/build/contracts/TcrPlaceholder.json b/build/contracts/TcrPlaceholder.json index b49953f..fa35235 100644 --- a/build/contracts/TcrPlaceholder.json +++ b/build/contracts/TcrPlaceholder.json @@ -1 +1 @@ -{"contractName":"TcrPlaceholder","abi":[{"constant":true,"inputs":[],"name":"minDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"applyStageLen","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"listings","outputs":[{"name":"applicationExpiry","type":"uint256"},{"name":"whitelisted","type":"bool"},{"name":"owner","type":"address"},{"name":"unstakedDeposit","type":"uint256"},{"name":"challengeID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_tokenAddr","type":"address"},{"name":"_minDeposit","type":"uint256"},{"name":"_applyStageLen","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"deposit","type":"uint256"}],"name":"_Application","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"_NewVideoWhitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_amount","type":"uint256"}],"name":"apply","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"removeListing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"updateStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"isWhitelisted","outputs":[{"name":"whitelisted","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"appWasMade","outputs":[{"name":"exists","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_termDate","type":"uint256"}],"name":"isExpired","outputs":[{"name":"expired","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMinDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"canBeWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516080806117ba83398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003819055508060048190555050505050611646806101746000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107d1565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610891565b005b34801561024f57600080fd5b50610258610894565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061089a565b005b3480156102e357600080fd5b506102ec610901565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b50610343610927565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e61092d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610952565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c60048036038101908080359060200190929190505050610a55565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610a58565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610db9565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e1c565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610f53565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610f5f565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ea565b005b34801561068457600080fd5b5061068d61123f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040516020018082805190602001908083835b60208310151561071957805182526020820191506020810190506020830392506106f4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610782578051825260208201915060208101905060208303925061075d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b6107da81610e1c565b15610889576107e881611265565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084a57808201518184015260208101905061082f565b50505050905090810190601f1680156108775780820380516001836020036101000a031916815260200191505b509250505060405180910390a161088e565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f557600080fd5b6108fe81611372565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040516020018082805190602001908083835b602083101515610991578051825260208201915060208101905060208303925061096c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109fa57805182526020820191506020810190506020830392506109d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b6000610a9584848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b151515610aa157600080fd5b610adc84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610ae857600080fd5b6003548210151515610af957600080fd5b600160008585604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610b595780518252602082019150602081019050602083039250610b34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610cfe57600080fd5b505af1158015610d12573d6000803e3d6000fd5b505050506040513d6020811015610d2857600080fd5b81019080805190602001909291905050501515610d4457600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040516020018082805190602001908083835b602083101515610e585780518252602082019150602081019050602083039250610e33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ec15780518252602082019150602081019050602083039250610e9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610ef9836106d9565b8015610f285750610f2760016000836000191660001916815260200190815260200160002060000154610f53565b5b8015610f3a5750610f3883610952565b155b15610f485760019150610f4d565b600091505b50919050565b60004382109050919050565b6000600160008484604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610fc15780518252602082019150602081019050602083039250610f9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561106457600080fd5b61109f83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b15156110aa57600080fd5b6110e583838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611372565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040516020018082805190602001908083835b6020831015156112a0578051825260208201915060208101905060208303925061127b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130957805182526020820191506020810190506020830392506112e4565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040516020018082805190602001908083835b6020831015156113ae5780518252602082019150602081019050602083039250611389565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561141757805182526020820191506020810190506020830392506113f2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156115a457600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561155d57600080fd5b505af1158015611571573d6000803e3d6000fd5b505050506040513d602081101561158757600080fd5b810190808051906020019092919050505015156115a357600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a723058202be8c13214e02cc6365a7dbe80e53a56a58bdf2b099e1481524fffc629145da00029"} \ No newline at end of file +{"contractName":"TcrPlaceholder","abi":[{"constant":true,"inputs":[],"name":"minDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"applyStageLen","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"listings","outputs":[{"name":"applicationExpiry","type":"uint256"},{"name":"whitelisted","type":"bool"},{"name":"owner","type":"address"},{"name":"unstakedDeposit","type":"uint256"},{"name":"challengeID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_tokenAddr","type":"address"},{"name":"_minDeposit","type":"uint256"},{"name":"_applyStageLen","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"deposit","type":"uint256"}],"name":"_Application","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"_NewVideoWhitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_amount","type":"uint256"}],"name":"apply","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"removeListing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"updateStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"isWhitelisted","outputs":[{"name":"whitelisted","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"appWasMade","outputs":[{"name":"exists","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_termDate","type":"uint256"}],"name":"isExpired","outputs":[{"name":"expired","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMinDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"canBeWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516080806117ba83398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003819055508060048190555050505050611646806101746000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107d1565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610891565b005b34801561024f57600080fd5b50610258610894565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061089a565b005b3480156102e357600080fd5b506102ec610901565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b50610343610927565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e61092d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610952565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c60048036038101908080359060200190929190505050610a55565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610a58565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610db9565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e1c565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610f53565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610f5f565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ea565b005b34801561068457600080fd5b5061068d61123f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040516020018082805190602001908083835b60208310151561071957805182526020820191506020810190506020830392506106f4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610782578051825260208201915060208101905060208303925061075d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b6107da81610e1c565b15610889576107e881611265565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084a57808201518184015260208101905061082f565b50505050905090810190601f1680156108775780820380516001836020036101000a031916815260200191505b509250505060405180910390a161088e565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f557600080fd5b6108fe81611372565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040516020018082805190602001908083835b602083101515610991578051825260208201915060208101905060208303925061096c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109fa57805182526020820191506020810190506020830392506109d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b6000610a9584848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b151515610aa157600080fd5b610adc84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610ae857600080fd5b6003548210151515610af957600080fd5b600160008585604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610b595780518252602082019150602081019050602083039250610b34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610cfe57600080fd5b505af1158015610d12573d6000803e3d6000fd5b505050506040513d6020811015610d2857600080fd5b81019080805190602001909291905050501515610d4457600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040516020018082805190602001908083835b602083101515610e585780518252602082019150602081019050602083039250610e33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ec15780518252602082019150602081019050602083039250610e9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610ef9836106d9565b8015610f285750610f2760016000836000191660001916815260200190815260200160002060000154610f53565b5b8015610f3a5750610f3883610952565b155b15610f485760019150610f4d565b600091505b50919050565b60004382109050919050565b6000600160008484604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610fc15780518252602082019150602081019050602083039250610f9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561106457600080fd5b61109f83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b15156110aa57600080fd5b6110e583838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611372565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040516020018082805190602001908083835b6020831015156112a0578051825260208201915060208101905060208303925061127b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130957805182526020820191506020810190506020830392506112e4565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040516020018082805190602001908083835b6020831015156113ae5780518252602082019150602081019050602083039250611389565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561141757805182526020820191506020810190506020830392506113f2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156115a457600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561155d57600080fd5b505af1158015611571573d6000803e3d6000fd5b505050506040513d602081101561158757600080fd5b810190808051906020019092919050505015156115a357600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a7230582082d5165d56c2932e5e125dc381efa73fdd1b995ffc1e08cd150c6bcff2e9d5d00029"} \ No newline at end of file diff --git a/build/contracts/Users.json b/build/contracts/Users.json index d2ffa85..a446ca1 100644 --- a/build/contracts/Users.json +++ b/build/contracts/Users.json @@ -1 +1 @@ -{"contractName":"Users","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"users","outputs":[{"name":"name","type":"string"},{"name":"email","type":"string"},{"name":"ipfsData","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_email","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"LogRemoveUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_name","type":"string"},{"name":"_email","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"get","outputs":[{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a723058205f6c1978a268ed99c588a5bc3e70f50bd3aec2ea115cdb08024a1fc55285b59c0029"} \ No newline at end of file +{"contractName":"Users","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"users","outputs":[{"name":"name","type":"string"},{"name":"email","type":"string"},{"name":"ipfsData","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_email","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"LogRemoveUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_name","type":"string"},{"name":"_email","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"get","outputs":[{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a72305820214ea8dddd1ff78be5f80fc837bf219ce602af83a5153264b2714f26d322980e0029"} \ No newline at end of file diff --git a/build/contracts/Videos.json b/build/contracts/Videos.json index feaf9ac..e3c3789 100644 --- a/build/contracts/Videos.json +++ b/build/contracts/Videos.json @@ -1 +1 @@ -{"contractName":"Videos","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paratiiRegistry","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"ipfsHashOrig","type":"string"},{"indexed":false,"name":"ipfsHash","type":"string"},{"indexed":false,"name":"ipfsData","type":"string"},{"indexed":false,"name":"registrar","type":"address"}],"name":"LogCreateVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"LogRemoveVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_owner","type":"address"},{"name":"_price","type":"uint256"},{"name":"_ipfsHashOrig","type":"string"},{"name":"_ipfsHash","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806117bc83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506116b8806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c5c565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f97565b005b34801561047e57600080fd5b506104876113ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061144a565b005b600086600080826040516020018082805190602001908083835b6020831015156105a2578051825260208201915060208101905060208303925061057d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561060b57805182526020820191506020810190506020830392506105e6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107a0575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061074557508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061079f57508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156107ab57600080fd5b896040516020018082805190602001908083835b6020831015156107e457805182526020820191506020810190506020830392506107bf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561084d5780518252602082019150602081019050602083039250610828565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061092792919061159f565b50604082015181600201908051906020019061094492919061159f565b50606082015181600301908051906020019061096192919061159f565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610adb578082015181840152602081019050610ac0565b50505050905090810190601f168015610b085780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610b41578082015181840152602081019050610b26565b50505050905090810190601f168015610b6e5780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610ba7578082015181840152602081019050610b8c565b50505050905090810190601f168015610bd45780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610c0d578082015181840152602081019050610bf2565b50505050905090810190601f168015610c3a5780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040516020018082805190602001908083835b602083101515610ca45780518252602082019150602081019050602083039250610c7f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d0d5780518252602082019150602081019050602083039250610ce8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e425780601f10610e1757610100808354040283529160200191610e42565b820191906000526020600020905b815481529060010190602001808311610e2557829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7a5780601f10610f4f57610100808354040283529160200191610f7a565b820191906000526020600020905b815481529060010190602001808311610f5d57829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040516020018082805190602001908083835b602083101515610fd65780518252602082019150602081019050602083039250610fb1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561103f578051825260208201915060208101905060208303925061101a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111d4575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061117957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806111d357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156111df57600080fd5b846040516020018082805190602001908083835b60208310151561121857805182526020820191506020810190506020830392506111f3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611281578051825260208201915060208101905060208303925061125c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006112e4919061161f565b6002820160006112f4919061161f565b600382016000611304919061161f565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156113be5780820151818401526020810190506113a3565b50505050905090810190601f1680156113eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156114e157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115e057805160ff191683800117855561160e565b8280016001018555821561160e579182015b8281111561160d5782518255916020019190600101906115f2565b5b50905061161b9190611667565b5090565b50805460018160011615610100020316600290046000825580601f106116455750611664565b601f0160209004906000526020600020908101906116639190611667565b5b50565b61168991905b8082111561168557600081600090555060010161166d565b5090565b905600a165627a7a72305820b04ce8e73e1e7df3b862d7e872d42927df1609c28e63de2f71293dbbb042c5d80029"} \ No newline at end of file +{"contractName":"Videos","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paratiiRegistry","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"ipfsHashOrig","type":"string"},{"indexed":false,"name":"ipfsHash","type":"string"},{"indexed":false,"name":"ipfsData","type":"string"},{"indexed":false,"name":"registrar","type":"address"}],"name":"LogCreateVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"LogRemoveVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_owner","type":"address"},{"name":"_price","type":"uint256"},{"name":"_ipfsHashOrig","type":"string"},{"name":"_ipfsHash","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806117bc83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506116b8806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c5c565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f97565b005b34801561047e57600080fd5b506104876113ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061144a565b005b600086600080826040516020018082805190602001908083835b6020831015156105a2578051825260208201915060208101905060208303925061057d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561060b57805182526020820191506020810190506020830392506105e6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107a0575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061074557508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061079f57508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156107ab57600080fd5b896040516020018082805190602001908083835b6020831015156107e457805182526020820191506020810190506020830392506107bf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561084d5780518252602082019150602081019050602083039250610828565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061092792919061159f565b50604082015181600201908051906020019061094492919061159f565b50606082015181600301908051906020019061096192919061159f565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610adb578082015181840152602081019050610ac0565b50505050905090810190601f168015610b085780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610b41578082015181840152602081019050610b26565b50505050905090810190601f168015610b6e5780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610ba7578082015181840152602081019050610b8c565b50505050905090810190601f168015610bd45780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610c0d578082015181840152602081019050610bf2565b50505050905090810190601f168015610c3a5780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040516020018082805190602001908083835b602083101515610ca45780518252602082019150602081019050602083039250610c7f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d0d5780518252602082019150602081019050602083039250610ce8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e425780601f10610e1757610100808354040283529160200191610e42565b820191906000526020600020905b815481529060010190602001808311610e2557829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7a5780601f10610f4f57610100808354040283529160200191610f7a565b820191906000526020600020905b815481529060010190602001808311610f5d57829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040516020018082805190602001908083835b602083101515610fd65780518252602082019150602081019050602083039250610fb1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561103f578051825260208201915060208101905060208303925061101a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111d4575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061117957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806111d357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156111df57600080fd5b846040516020018082805190602001908083835b60208310151561121857805182526020820191506020810190506020830392506111f3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611281578051825260208201915060208101905060208303925061125c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006112e4919061161f565b6002820160006112f4919061161f565b600382016000611304919061161f565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156113be5780820151818401526020810190506113a3565b50505050905090810190601f1680156113eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156114e157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115e057805160ff191683800117855561160e565b8280016001018555821561160e579182015b8281111561160d5782518255916020019190600101906115f2565b5b50905061161b9190611667565b5090565b50805460018160011615610100020316600290046000825580601f106116455750611664565b601f0160209004906000526020600020908101906116639190611667565b5b50565b61168991905b8082111561168557600081600090555060010161166d565b5090565b905600a165627a7a723058206df2512683d6b310205ed8292d21bae906cb6f41ecb9fb3e40e673030d2ffc690029"} \ No newline at end of file diff --git a/build/contracts/Views.json b/build/contracts/Views.json index d8ec08b..a351168 100644 --- a/build/contracts/Views.json +++ b/build/contracts/Views.json @@ -1 +1 @@ -{"contractName":"Views","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateView","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveView","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"bool"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userViewedVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806114f183398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506113ed806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082d565b005b3480156101ec57600080fd5b506101f5610c7a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610ca0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cc5565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e06565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f5b565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b6020831015156106865780518252602082019150602081019050602083039250610661565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106ef57805182526020820191506020810190506020830392506106ca565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600061075791906112d4565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109af5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d602081101561096f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ba57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040516020018082805190602001908083835b602083101515610a4c5780518252602082019150602081019050602083039250610a27565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ab55780518252602082019150602081019050602083039250610a90565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610b3492919061131c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610bd2578082015181840152602081019050610bb7565b50505050905090810190601f168015610bff5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610d415780518252602082019150602081019050602083039250610d1c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610daa5780518252602082019150602081019050602083039250610d85565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9d57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561107957600080fd5b505af115801561108d573d6000803e3d6000fd5b505050506040513d60208110156110a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156110ee57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156111685780518252602082019150602081019050602083039250611143565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112c15780601f10611296576101008083540402835291602001916112c1565b820191906000526020600020905b8154815290600101906020018083116112a457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f106112fa5750611319565b601f016020900490600052602060002090810190611318919061139c565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061135d57805160ff191683800117855561138b565b8280016001018555821561138b579182015b8281111561138a57825182559160200191906001019061136f565b5b509050611398919061139c565b5090565b6113be91905b808211156113ba5760008160009055506001016113a2565b5090565b905600a165627a7a72305820ef5a8155ef203c865740b84647bf52c4fe6a8c2be5c9618d4da7d16ff6b96d130029"} \ No newline at end of file +{"contractName":"Views","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateView","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveView","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"bool"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userViewedVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806114f183398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506113ed806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082d565b005b3480156101ec57600080fd5b506101f5610c7a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610ca0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cc5565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e06565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f5b565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b6020831015156106865780518252602082019150602081019050602083039250610661565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106ef57805182526020820191506020810190506020830392506106ca565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600061075791906112d4565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109af5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d602081101561096f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ba57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040516020018082805190602001908083835b602083101515610a4c5780518252602082019150602081019050602083039250610a27565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ab55780518252602082019150602081019050602083039250610a90565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610b3492919061131c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610bd2578082015181840152602081019050610bb7565b50505050905090810190601f168015610bff5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610d415780518252602082019150602081019050602083039250610d1c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610daa5780518252602082019150602081019050602083039250610d85565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9d57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561107957600080fd5b505af115801561108d573d6000803e3d6000fd5b505050506040513d60208110156110a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156110ee57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156111685780518252602082019150602081019050602083039250611143565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112c15780601f10611296576101008083540402835291602001916112c1565b820191906000526020600020905b8154815290600101906020018083116112a457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f106112fa5750611319565b601f016020900490600052602060002090810190611318919061139c565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061135d57805160ff191683800117855561138b565b8280016001018555821561138b579182015b8281111561138a57825182559160200191906001019061136f565b5b509050611398919061139c565b5090565b6113be91905b808211156113ba5760008160009055506001016113a2565b5090565b905600a165627a7a7230582099340bc8b623b6840249e09b81792f58ad9be7a0fffba2f171b1a704756ffc670029"} \ No newline at end of file diff --git a/build/contracts/Vouchers.json b/build/contracts/Vouchers.json index a352980..55c1d12 100644 --- a/build/contracts/Vouchers.json +++ b/build/contracts/Vouchers.json @@ -1 +1 @@ -{"contractName":"Vouchers","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"vouchers","outputs":[{"name":"_claimant","type":"address"},{"name":"_amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"LogCreateVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"}],"name":"LogRemoveVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_voucher","type":"string"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_claimant","type":"address"}],"name":"LogRedeemVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_voucher","type":"string"}],"name":"hashVoucher","outputs":[{"name":"_hashedVoucher","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_voucher","type":"string"}],"name":"redeem","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610fc883398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ec4806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610443565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610816565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b5061020261083c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b506102736004803603810190808035600019169060200190929190505050610861565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a7d565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610cff565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d43565b005b6000816040516020018082805190602001908083835b6020831015156103a65780518252602082019150602081019050602083039250610381565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040f57805182526020820191506020810190506020830392506103ea565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806104528561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561048457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156104e357600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561060257600080fd5b505af1158015610616573d6000803e3d6000fd5b505050506040513d602081101561062c57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106e657600080fd5b505af11580156106fa573d6000803e3d6000fd5b505050506040513d602081101561071057600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050506040513d60208110156109a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ee57600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610bff5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d6020811015610bbf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c0a57600080fd5b600081111515610c1957600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dda57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820f93bd594bd0d4704e749edce41557c0bdb611b9c4975f525bdd3c0b2992bd9540029"} \ No newline at end of file +{"contractName":"Vouchers","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"vouchers","outputs":[{"name":"_claimant","type":"address"},{"name":"_amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"LogCreateVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"}],"name":"LogRemoveVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_voucher","type":"string"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_claimant","type":"address"}],"name":"LogRedeemVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_voucher","type":"string"}],"name":"hashVoucher","outputs":[{"name":"_hashedVoucher","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_voucher","type":"string"}],"name":"redeem","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610fc883398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ec4806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610443565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610816565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b5061020261083c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b506102736004803603810190808035600019169060200190929190505050610861565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a7d565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610cff565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d43565b005b6000816040516020018082805190602001908083835b6020831015156103a65780518252602082019150602081019050602083039250610381565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040f57805182526020820191506020810190506020830392506103ea565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806104528561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561048457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156104e357600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561060257600080fd5b505af1158015610616573d6000803e3d6000fd5b505050506040513d602081101561062c57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106e657600080fd5b505af11580156106fa573d6000803e3d6000fd5b505050506040513d602081101561071057600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050506040513d60208110156109a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ee57600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610bff5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d6020811015610bbf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c0a57600080fd5b600081111515610c1957600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dda57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582048d6374bd30d6cdf8f6815006ef08ffbe1cfd318af71dc8ff957cf8ab198b7790029"} \ No newline at end of file diff --git a/contracts/paratii/PTIDistributor.sol b/contracts/paratii/PTIDistributor.sol index bcf5a7d..4ce2bb3 100644 --- a/contracts/paratii/PTIDistributor.sol +++ b/contracts/paratii/PTIDistributor.sol @@ -49,9 +49,8 @@ contract PTIDistributor is Ownable { uint8 _v, bytes32 _r, bytes32 _s - ) + ) public - pure { bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); bytes memory prefix = "\x19Ethereum Signed Message:\n32"; @@ -60,8 +59,8 @@ contract PTIDistributor is Ownable { } function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) - public - pure + public + pure returns (address) { bytes memory prefix = "\x19Ethereum Signed Message:\n32"; @@ -70,8 +69,7 @@ contract PTIDistributor is Ownable { } function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) - public - pure + public { bytes32 hashing = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason)); emit LogDebug(hashing); From 958a9c5e64d755f31dceb65e923556ffdef904f7 Mon Sep 17 00:00:00 2001 From: Matheus Faria de Alencar Date: Sat, 14 Jul 2018 14:24:37 -0300 Subject: [PATCH 4/4] fix: Update build files --- build/contracts/Avatar.json | 5074 +++++++++++- build/contracts/BasicToken.json | 2103 ++++- build/contracts/Debug.json | 773 +- build/contracts/ERC20.json | 1238 ++- build/contracts/ERC20Basic.json | 807 +- build/contracts/Likes.json | 8315 +++++++++++++++++++- build/contracts/Migrations.json | 1381 +++- build/contracts/Ownable.json | 1460 +++- build/contracts/PTIDistributor.json | 7381 +++++++++++++++++- build/contracts/ParatiiToken.json | 1316 +++- build/contracts/Registry.json | 6733 +++++++++++++++- build/contracts/SafeMath.json | 2440 +++++- build/contracts/Sales.json | 5297 ++++++++++++- build/contracts/SendEther.json | 1272 ++- build/contracts/StandardToken.json | 6298 ++++++++++++++- build/contracts/Store.json | 4961 +++++++++++- build/contracts/TcrPlaceholder.json | 10669 +++++++++++++++++++++++++- build/contracts/Users.json | 3762 ++++++++- build/contracts/Videos.json | 7988 ++++++++++++++++++- build/contracts/Views.json | 5080 +++++++++++- build/contracts/Vouchers.json | 5895 +++++++++++++- 21 files changed, 90222 insertions(+), 21 deletions(-) diff --git a/build/contracts/Avatar.json b/build/contracts/Avatar.json index e9fe792..1bef823 100644 --- a/build/contracts/Avatar.json +++ b/build/contracts/Avatar.json @@ -1 +1,5073 @@ -{"contractName":"Avatar","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"whitelist","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"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"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addToWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeFromWhitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isOnWhiteList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610ca483398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ba0806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582046ec78906a239ea3a717f04c6026c587fdfc84fe7904aafad788c3a35515fea10029"} \ No newline at end of file +{ + "contractName": "Avatar", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "uint256" + } + ], + "name": "whitelist", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "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": [ + { + "name": "_registry", + "type": "address" + } + ], + "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" + }, + { + "constant": false, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "addToWhitelist", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "removeFromWhitelist", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_from", + "type": "address" + }, + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "isOnWhiteList", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051602080610ca483398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ba0806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820191fc42efb8cc8e7a410a931750fd0e856c0c0fe1b4a53df213f70805ed94b2e0029", + "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806323b872dd146100935780637b103999146101185780637ebd1b301461016f5780638ab1d681146101dc5780638da5cb5b1461021f578063e43252d714610276578063ecb223ab146102b9578063f2fde38b14610314575b600080fd5b34801561009f57600080fd5b506100fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610357565b604051808215151515815260200191505060405180910390f35b34801561012457600080fd5b5061012d610589565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017b57600080fd5b5061019a600480360381019080803590602001909291905050506105af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101e857600080fd5b5061021d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105ed565b005b34801561022b57600080fd5b50610234610717565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028257600080fd5b506102b7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061073c565b005b3480156102c557600080fd5b506102fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061097c565b604051808215151515815260200191505060405180910390f35b34801561032057600080fd5b50610355600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1f565b005b6000806103633361097c565b151561036e57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561043057600080fd5b505af1158015610444573d6000803e3d6000fd5b505050506040513d602081101561045a57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff166323b872dd8686866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561054457600080fd5b505af1158015610558573d6000803e3d6000fd5b505050506040513d602081101561056e57600080fd5b81019080805190602001909291905050509150509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002818154811015156105be57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561064a57600080fd5b600090505b600280549050811015610713578173ffffffffffffffffffffffffffffffffffffffff1660028281548110151561068257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610706576002818154811015156106d857fe5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b808060010191505061064f565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561079a57600080fd5b6002805490509150600090505b6002805490508110156108a5578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156107da57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561082657610977565b600073ffffffffffffffffffffffffffffffffffffffff1660028281548110151561084d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610898578091505b80806001019150506107a7565b60028054905082141561091d5760028390806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610976565b8260028381548110151561092d57fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b505050565b600080600090505b600280549050811015610a14578273ffffffffffffffffffffffffffffffffffffffff166002828154811015156109b757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a075760019150610a19565b8080600101915050610984565b600091505b50919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610a7a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ab657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820191fc42efb8cc8e7a410a931750fd0e856c0c0fe1b4a53df213f70805ed94b2e0029", + "sourceMap": "204:1705:2:-;;;394:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;394:104:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;454:9:2;443:8;;:20;;;;;;;;;;;;;;;;;;481:10;473:5;;:18;;;;;;;;;;;;;;;;;;394:104;204:1705;;;;;;", + "deployedSourceMap": "204:1705:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1344:309;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1344:309:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;237:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;237:24:2;;;;;;;;;;;;;;;;;;;;;;;;;;;268:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;268:26:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1106:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1106:232:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;504:596:2;;8:9:-1;5:2;;;30:1;27;20:12;5:2;504:596:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;1659:247;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1659:247:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1344:309:2;1500:4;1520:18;344:25;358:10;344:13;:25::i;:::-;336:34;;;;;;;;1554:8;;;;;;;;;;;:20;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1554:36:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1554:36:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1554:36:2;;;;;;;;;;;;;;;;1520:71;;1608:5;:18;;;1627:5;1634:3;1639:6;1608:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1608:38:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1608:38:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1608:38:2;;;;;;;;;;;;;;;;1601:45;;1344:309;;;;;;:::o;237:24::-;;;;;;;;;;;;;:::o;268:26::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1106:232::-;1185:6;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1194:1:2;1185:10;;1180:152;1201:9;:16;;;;1197:1;:20;1180:152;;;1258:8;1242:24;;:9;1252:1;1242:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;1238:84;;;1293:9;1303:1;1293:12;;;;;;;;;;;;;;;;;;1286:19;;;;;;;;;;;1238:84;1219:3;;;;;;;1180:152;;;1106:232;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;504:596:2:-;669:14;717:6;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;686:9:2;:16;;;;669:33;;726:1;717:10;;712:228;733:9;:16;;;;729:1;:20;712:228;;;790:8;774:24;;:9;784:1;774:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;770:69;;;818:7;;770:69;880:1;856:26;;:9;866:1;856:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:26;;;852:78;;;914:1;902:13;;852:78;751:3;;;;;;;712:228;;;966:9;:16;;;;953:9;:29;949:145;;;997:9;1012:8;997:24;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;997:24:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;949:145;;;1075:8;1052:9;1062;1052:20;;;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;949:145;659:1:16;504:596:2;;;:::o;1659:247::-;1720:4;1741:6;1750:1;1741:10;;1736:142;1757:9;:16;;;;1753:1;:20;1736:142;;;1814:8;1798:24;;:9;1808:1;1798:12;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;1794:74;;;1849:4;1842:11;;;;1794:74;1775:3;;;;;;;1736:142;;;1894:5;1887:12;;1659:247;;;;;:::o;827:169:16:-;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.18;\nimport \"./Registry.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\n/*\n * @dev A contract that holds PTI for the paratii DAO\n *\n */\n\ncontract Avatar is Ownable {\n Registry public registry;\n\n address[] public whitelist;\n\n modifier onlyWhitelist() {\n require(isOnWhiteList(msg.sender));\n _;\n }\n\n constructor(Registry _registry) public {\n registry = _registry;\n owner = msg.sender;\n }\n\n function addToWhitelist(address _address) public onlyOwner {\n // check if the address is already known, and if there is a free space in the whitelist\n uint freeSpace = whitelist.length;\n for (uint i = 0; i < whitelist.length; i++) {\n if (whitelist[i] == _address) {\n return;\n }\n if (whitelist[i] == address(0)) {\n freeSpace = i;\n }\n }\n if (freeSpace == whitelist.length){\n whitelist.push(_address);\n } else {\n whitelist[freeSpace] = _address;\n }\n }\n\n function removeFromWhitelist(address _address) public onlyOwner {\n for (uint i = 0; i < whitelist.length; i++) {\n if (whitelist[i] == _address) {\n delete whitelist[i]; \n }\n }\n }\n\n function transferFrom(\n address _from, \n address _to, \n uint256 _value\n ) \n public \n onlyWhitelist \n returns (bool)\n {\n ParatiiToken token = ParatiiToken(registry.getContract(\"ParatiiToken\"));\n return token.transferFrom(_from, _to, _value);\n }\n\n function isOnWhiteList(address _address) public view returns(bool) {\n for (uint i = 0; i < whitelist.length; i++) {\n if (whitelist[i] == _address) {\n return true;\n }\n }\n return false;\n }\n\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", + "exportedSymbols": { + "Avatar": [ + 287 + ] + }, + "id": 288, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 89, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:2" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 90, + "nodeType": "ImportDirective", + "scope": 288, + "sourceUnit": 1157, + "src": "25:24:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 91, + "nodeType": "ImportDirective", + "scope": 288, + "sourceUnit": 905, + "src": "50:28:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 92, + "nodeType": "ImportDirective", + "scope": 288, + "sourceUnit": 2950, + "src": "79:59:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 93, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "223:7:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 94, + "nodeType": "InheritanceSpecifier", + "src": "223:7:2" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 287, + "linearizedBaseContracts": [ + 287, + 2949 + ], + "name": "Avatar", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 96, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 287, + "src": "237:24:2", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 95, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "237:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 99, + "name": "whitelist", + "nodeType": "VariableDeclaration", + "scope": 287, + "src": "268:26:2", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 97, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "268:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 98, + "length": null, + "nodeType": "ArrayTypeName", + "src": "268:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 109, + "nodeType": "Block", + "src": "326:62:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 103, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "358:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "358:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 102, + "name": "isOnWhiteList", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 286, + "src": "344:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "344:25:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 101, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "336:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "336:34:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 107, + "nodeType": "ExpressionStatement", + "src": "336:34:2" + }, + { + "id": 108, + "nodeType": "PlaceholderStatement", + "src": "380:1:2" + } + ] + }, + "documentation": null, + "id": 110, + "name": "onlyWhitelist", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 100, + "nodeType": "ParameterList", + "parameters": [], + "src": "323:2:2" + }, + "src": "301:87:2", + "visibility": "internal" + }, + { + "body": { + "id": 124, + "nodeType": "Block", + "src": "433:65:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 115, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 96, + "src": "443:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 116, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 112, + "src": "454:9:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "443:20:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 118, + "nodeType": "ExpressionStatement", + "src": "443:20:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 119, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "473:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 120, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "481:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "481:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "473:18:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 123, + "nodeType": "ExpressionStatement", + "src": "473:18:2" + } + ] + }, + "documentation": null, + "id": 125, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 113, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 112, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 125, + "src": "406:18:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 111, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "406:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "405:20:2" + }, + "payable": false, + "returnParameters": { + "id": 114, + "nodeType": "ParameterList", + "parameters": [], + "src": "433:0:2" + }, + "scope": 287, + "src": "394:104:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 190, + "nodeType": "Block", + "src": "563:537:2", + "statements": [ + { + "assignments": [ + 133 + ], + "declarations": [ + { + "constant": false, + "id": 133, + "name": "freeSpace", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "669:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 132, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "669:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 136, + "initialValue": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 134, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "686:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 135, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "686:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "669:33:2" + }, + { + "body": { + "id": 169, + "nodeType": "Block", + "src": "756:184:2", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 152, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 148, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "774:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 150, + "indexExpression": { + "argumentTypes": null, + "id": 149, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "784:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "774:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 151, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "790:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "774:24:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 155, + "nodeType": "IfStatement", + "src": "770:69:2", + "trueBody": { + "id": 154, + "nodeType": "Block", + "src": "800:39:2", + "statements": [ + { + "expression": null, + "functionReturnParameters": 131, + "id": 153, + "nodeType": "Return", + "src": "818:7:2" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 156, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "856:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 158, + "indexExpression": { + "argumentTypes": null, + "id": 157, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "866:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "856:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "880:1:2", + "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": 159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "872:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "872:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "856:26:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 168, + "nodeType": "IfStatement", + "src": "852:78:2", + "trueBody": { + "id": 167, + "nodeType": "Block", + "src": "884:46:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 163, + "name": "freeSpace", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "902:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 164, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "914:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "902:13:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 166, + "nodeType": "ExpressionStatement", + "src": "902:13:2" + } + ] + } + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 141, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "729:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 142, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "733:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 143, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "733:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "729:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 170, + "initializationExpression": { + "assignments": [ + 138 + ], + "declarations": [ + { + "constant": false, + "id": 138, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "717:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 137, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "717:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 140, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "726:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "717:10:2" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 146, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "751:3:2", + "subExpression": { + "argumentTypes": null, + "id": 145, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "751:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 147, + "nodeType": "ExpressionStatement", + "src": "751:3:2" + }, + "nodeType": "ForStatement", + "src": "712:228:2" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 171, + "name": "freeSpace", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "953:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 172, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "966:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 173, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "966:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "953:29:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 188, + "nodeType": "Block", + "src": "1038:56:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 186, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 182, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1052:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 184, + "indexExpression": { + "argumentTypes": null, + "id": 183, + "name": "freeSpace", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "1062:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1052:20:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 185, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "1075:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1052:31:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 187, + "nodeType": "ExpressionStatement", + "src": "1052:31:2" + } + ] + }, + "id": 189, + "nodeType": "IfStatement", + "src": "949:145:2", + "trueBody": { + "id": 181, + "nodeType": "Block", + "src": "983:49:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 178, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "1012:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "argumentTypes": null, + "id": 175, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "997:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "997:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) returns (uint256)" + } + }, + "id": 179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "997:24:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 180, + "nodeType": "ExpressionStatement", + "src": "997:24:2" + } + ] + } + } + ] + }, + "documentation": null, + "id": 191, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 130, + "modifierName": { + "argumentTypes": null, + "id": 129, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "553:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "553:9:2" + } + ], + "name": "addToWhitelist", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 128, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 127, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "528:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "528:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "527:18:2" + }, + "payable": false, + "returnParameters": { + "id": 131, + "nodeType": "ParameterList", + "parameters": [], + "src": "563:0:2" + }, + "scope": 287, + "src": "504:596:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 223, + "nodeType": "Block", + "src": "1170:168:2", + "statements": [ + { + "body": { + "id": 221, + "nodeType": "Block", + "src": "1224:108:2", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 209, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1242:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 211, + "indexExpression": { + "argumentTypes": null, + "id": 210, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1252:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1242:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 212, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 193, + "src": "1258:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1242:24:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 220, + "nodeType": "IfStatement", + "src": "1238:84:2", + "trueBody": { + "id": 219, + "nodeType": "Block", + "src": "1268:54:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1286:19:2", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 214, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1293:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 216, + "indexExpression": { + "argumentTypes": null, + "id": 215, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1303:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1293:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 218, + "nodeType": "ExpressionStatement", + "src": "1286:19:2" + } + ] + } + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 202, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1197:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 203, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1201:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 204, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1201:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1197:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 222, + "initializationExpression": { + "assignments": [ + 199 + ], + "declarations": [ + { + "constant": false, + "id": 199, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 224, + "src": "1185:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 198, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1185:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 201, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1194:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1185:10:2" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1219:3:2", + "subExpression": { + "argumentTypes": null, + "id": 206, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1219:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 208, + "nodeType": "ExpressionStatement", + "src": "1219:3:2" + }, + "nodeType": "ForStatement", + "src": "1180:152:2" + } + ] + }, + "documentation": null, + "id": 224, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 196, + "modifierName": { + "argumentTypes": null, + "id": 195, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1160:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1160:9:2" + } + ], + "name": "removeFromWhitelist", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 194, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 193, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 224, + "src": "1135:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 192, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1135:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1134:18:2" + }, + "payable": false, + "returnParameters": { + "id": 197, + "nodeType": "ParameterList", + "parameters": [], + "src": "1170:0:2" + }, + "scope": 287, + "src": "1106:232:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 253, + "nodeType": "Block", + "src": "1510:143:2", + "statements": [ + { + "assignments": [ + 238 + ], + "declarations": [ + { + "constant": false, + "id": 238, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1520:18:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 237, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "1520:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 245, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50617261746969546f6b656e", + "id": 242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1575:14:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 240, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 96, + "src": "1554:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1554:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1554:36:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 239, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "1541:12:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1541:50:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1520:71:2" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 248, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 226, + "src": "1627:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 249, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 228, + "src": "1634:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 250, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 230, + "src": "1639:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 246, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 238, + "src": "1608:5:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 3183, + "src": "1608:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1608:38:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 236, + "id": 252, + "nodeType": "Return", + "src": "1601:45:2" + } + ] + }, + "documentation": null, + "id": 254, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 233, + "modifierName": { + "argumentTypes": null, + "id": 232, + "name": "onlyWhitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 110, + "src": "1468:13:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1468:13:2" + } + ], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 231, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 226, + "name": "_from", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1375:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1375:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 228, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1399:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1399:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 230, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1421:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1421:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1365:76:2" + }, + "payable": false, + "returnParameters": { + "id": 236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 235, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1500:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 234, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1500:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1499:6:2" + }, + "scope": 287, + "src": "1344:309:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 285, + "nodeType": "Block", + "src": "1726:180:2", + "statements": [ + { + "body": { + "id": 281, + "nodeType": "Block", + "src": "1780:98:2", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 272, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1798:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 274, + "indexExpression": { + "argumentTypes": null, + "id": 273, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 262, + "src": "1808:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1798:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 275, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 256, + "src": "1814:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1798:24:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 280, + "nodeType": "IfStatement", + "src": "1794:74:2", + "trueBody": { + "id": 279, + "nodeType": "Block", + "src": "1824:44:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 277, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1849:4:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 260, + "id": 278, + "nodeType": "Return", + "src": "1842:11:2" + } + ] + } + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 265, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 262, + "src": "1753:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 266, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1757:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 267, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1757:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1753:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 282, + "initializationExpression": { + "assignments": [ + 262 + ], + "declarations": [ + { + "constant": false, + "id": 262, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 286, + "src": "1741:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 261, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1741:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 264, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 263, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1750:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1741:10:2" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1775:3:2", + "subExpression": { + "argumentTypes": null, + "id": 269, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 262, + "src": "1775:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 271, + "nodeType": "ExpressionStatement", + "src": "1775:3:2" + }, + "nodeType": "ForStatement", + "src": "1736:142:2" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 283, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1894:5:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 260, + "id": 284, + "nodeType": "Return", + "src": "1887:12:2" + } + ] + }, + "documentation": null, + "id": 286, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "isOnWhiteList", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 257, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 256, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 286, + "src": "1682:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 255, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1682:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1681:18:2" + }, + "payable": false, + "returnParameters": { + "id": 260, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 259, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 286, + "src": "1720:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 258, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1720:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1719:6:2" + }, + "scope": 287, + "src": "1659:247:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 288, + "src": "204:1705:2" + } + ], + "src": "0:1910:2" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", + "exportedSymbols": { + "Avatar": [ + 287 + ] + }, + "id": 288, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 89, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:2" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 90, + "nodeType": "ImportDirective", + "scope": 288, + "sourceUnit": 1157, + "src": "25:24:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 91, + "nodeType": "ImportDirective", + "scope": 288, + "sourceUnit": 905, + "src": "50:28:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 92, + "nodeType": "ImportDirective", + "scope": 288, + "sourceUnit": 2950, + "src": "79:59:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 93, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "223:7:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 94, + "nodeType": "InheritanceSpecifier", + "src": "223:7:2" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 287, + "linearizedBaseContracts": [ + 287, + 2949 + ], + "name": "Avatar", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 96, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 287, + "src": "237:24:2", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 95, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "237:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 99, + "name": "whitelist", + "nodeType": "VariableDeclaration", + "scope": 287, + "src": "268:26:2", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 97, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "268:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 98, + "length": null, + "nodeType": "ArrayTypeName", + "src": "268:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 109, + "nodeType": "Block", + "src": "326:62:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 103, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "358:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "358:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 102, + "name": "isOnWhiteList", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 286, + "src": "344:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "344:25:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 101, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "336:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "336:34:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 107, + "nodeType": "ExpressionStatement", + "src": "336:34:2" + }, + { + "id": 108, + "nodeType": "PlaceholderStatement", + "src": "380:1:2" + } + ] + }, + "documentation": null, + "id": 110, + "name": "onlyWhitelist", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 100, + "nodeType": "ParameterList", + "parameters": [], + "src": "323:2:2" + }, + "src": "301:87:2", + "visibility": "internal" + }, + { + "body": { + "id": 124, + "nodeType": "Block", + "src": "433:65:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 115, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 96, + "src": "443:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 116, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 112, + "src": "454:9:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "443:20:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 118, + "nodeType": "ExpressionStatement", + "src": "443:20:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 119, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "473:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 120, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "481:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "481:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "473:18:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 123, + "nodeType": "ExpressionStatement", + "src": "473:18:2" + } + ] + }, + "documentation": null, + "id": 125, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 113, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 112, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 125, + "src": "406:18:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 111, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "406:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "405:20:2" + }, + "payable": false, + "returnParameters": { + "id": 114, + "nodeType": "ParameterList", + "parameters": [], + "src": "433:0:2" + }, + "scope": 287, + "src": "394:104:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 190, + "nodeType": "Block", + "src": "563:537:2", + "statements": [ + { + "assignments": [ + 133 + ], + "declarations": [ + { + "constant": false, + "id": 133, + "name": "freeSpace", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "669:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 132, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "669:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 136, + "initialValue": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 134, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "686:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 135, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "686:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "669:33:2" + }, + { + "body": { + "id": 169, + "nodeType": "Block", + "src": "756:184:2", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 152, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 148, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "774:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 150, + "indexExpression": { + "argumentTypes": null, + "id": 149, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "784:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "774:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 151, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "790:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "774:24:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 155, + "nodeType": "IfStatement", + "src": "770:69:2", + "trueBody": { + "id": 154, + "nodeType": "Block", + "src": "800:39:2", + "statements": [ + { + "expression": null, + "functionReturnParameters": 131, + "id": 153, + "nodeType": "Return", + "src": "818:7:2" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 156, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "856:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 158, + "indexExpression": { + "argumentTypes": null, + "id": 157, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "866:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "856:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "880:1:2", + "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": 159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "872:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "872:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "856:26:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 168, + "nodeType": "IfStatement", + "src": "852:78:2", + "trueBody": { + "id": 167, + "nodeType": "Block", + "src": "884:46:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 163, + "name": "freeSpace", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "902:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 164, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "914:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "902:13:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 166, + "nodeType": "ExpressionStatement", + "src": "902:13:2" + } + ] + } + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 141, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "729:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 142, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "733:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 143, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "733:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "729:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 170, + "initializationExpression": { + "assignments": [ + 138 + ], + "declarations": [ + { + "constant": false, + "id": 138, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "717:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 137, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "717:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 140, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "726:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "717:10:2" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 146, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "751:3:2", + "subExpression": { + "argumentTypes": null, + "id": 145, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 138, + "src": "751:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 147, + "nodeType": "ExpressionStatement", + "src": "751:3:2" + }, + "nodeType": "ForStatement", + "src": "712:228:2" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 171, + "name": "freeSpace", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "953:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 172, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "966:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 173, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "966:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "953:29:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 188, + "nodeType": "Block", + "src": "1038:56:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 186, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 182, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1052:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 184, + "indexExpression": { + "argumentTypes": null, + "id": 183, + "name": "freeSpace", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "1062:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1052:20:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 185, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "1075:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1052:31:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 187, + "nodeType": "ExpressionStatement", + "src": "1052:31:2" + } + ] + }, + "id": 189, + "nodeType": "IfStatement", + "src": "949:145:2", + "trueBody": { + "id": 181, + "nodeType": "Block", + "src": "983:49:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 178, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "1012:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "argumentTypes": null, + "id": 175, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "997:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "997:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) returns (uint256)" + } + }, + "id": 179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "997:24:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 180, + "nodeType": "ExpressionStatement", + "src": "997:24:2" + } + ] + } + } + ] + }, + "documentation": null, + "id": 191, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 130, + "modifierName": { + "argumentTypes": null, + "id": 129, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "553:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "553:9:2" + } + ], + "name": "addToWhitelist", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 128, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 127, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 191, + "src": "528:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "528:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "527:18:2" + }, + "payable": false, + "returnParameters": { + "id": 131, + "nodeType": "ParameterList", + "parameters": [], + "src": "563:0:2" + }, + "scope": 287, + "src": "504:596:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 223, + "nodeType": "Block", + "src": "1170:168:2", + "statements": [ + { + "body": { + "id": 221, + "nodeType": "Block", + "src": "1224:108:2", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 209, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1242:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 211, + "indexExpression": { + "argumentTypes": null, + "id": 210, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1252:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1242:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 212, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 193, + "src": "1258:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1242:24:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 220, + "nodeType": "IfStatement", + "src": "1238:84:2", + "trueBody": { + "id": 219, + "nodeType": "Block", + "src": "1268:54:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1286:19:2", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 214, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1293:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 216, + "indexExpression": { + "argumentTypes": null, + "id": 215, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1303:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1293:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 218, + "nodeType": "ExpressionStatement", + "src": "1286:19:2" + } + ] + } + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 202, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1197:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 203, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1201:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 204, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1201:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1197:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 222, + "initializationExpression": { + "assignments": [ + 199 + ], + "declarations": [ + { + "constant": false, + "id": 199, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 224, + "src": "1185:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 198, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1185:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 201, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1194:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1185:10:2" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1219:3:2", + "subExpression": { + "argumentTypes": null, + "id": 206, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "1219:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 208, + "nodeType": "ExpressionStatement", + "src": "1219:3:2" + }, + "nodeType": "ForStatement", + "src": "1180:152:2" + } + ] + }, + "documentation": null, + "id": 224, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 196, + "modifierName": { + "argumentTypes": null, + "id": 195, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1160:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1160:9:2" + } + ], + "name": "removeFromWhitelist", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 194, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 193, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 224, + "src": "1135:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 192, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1135:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1134:18:2" + }, + "payable": false, + "returnParameters": { + "id": 197, + "nodeType": "ParameterList", + "parameters": [], + "src": "1170:0:2" + }, + "scope": 287, + "src": "1106:232:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 253, + "nodeType": "Block", + "src": "1510:143:2", + "statements": [ + { + "assignments": [ + 238 + ], + "declarations": [ + { + "constant": false, + "id": 238, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1520:18:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 237, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "1520:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 245, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50617261746969546f6b656e", + "id": 242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1575:14:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 240, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 96, + "src": "1554:8:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1554:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1554:36:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 239, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "1541:12:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1541:50:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1520:71:2" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 248, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 226, + "src": "1627:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 249, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 228, + "src": "1634:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 250, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 230, + "src": "1639:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 246, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 238, + "src": "1608:5:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 3183, + "src": "1608:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1608:38:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 236, + "id": 252, + "nodeType": "Return", + "src": "1601:45:2" + } + ] + }, + "documentation": null, + "id": 254, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 233, + "modifierName": { + "argumentTypes": null, + "id": 232, + "name": "onlyWhitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 110, + "src": "1468:13:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1468:13:2" + } + ], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 231, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 226, + "name": "_from", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1375:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1375:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 228, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1399:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1399:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 230, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1421:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1421:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1365:76:2" + }, + "payable": false, + "returnParameters": { + "id": 236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 235, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 254, + "src": "1500:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 234, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1500:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1499:6:2" + }, + "scope": 287, + "src": "1344:309:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 285, + "nodeType": "Block", + "src": "1726:180:2", + "statements": [ + { + "body": { + "id": 281, + "nodeType": "Block", + "src": "1780:98:2", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 272, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1798:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 274, + "indexExpression": { + "argumentTypes": null, + "id": 273, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 262, + "src": "1808:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1798:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 275, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 256, + "src": "1814:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1798:24:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 280, + "nodeType": "IfStatement", + "src": "1794:74:2", + "trueBody": { + "id": 279, + "nodeType": "Block", + "src": "1824:44:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 277, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1849:4:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 260, + "id": 278, + "nodeType": "Return", + "src": "1842:11:2" + } + ] + } + } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 265, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 262, + "src": "1753:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 266, + "name": "whitelist", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "1757:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 267, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1757:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1753:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 282, + "initializationExpression": { + "assignments": [ + 262 + ], + "declarations": [ + { + "constant": false, + "id": 262, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 286, + "src": "1741:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 261, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1741:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 264, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 263, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1750:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1741:10:2" + }, + "loopExpression": { + "expression": { + "argumentTypes": null, + "id": 270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1775:3:2", + "subExpression": { + "argumentTypes": null, + "id": 269, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 262, + "src": "1775:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 271, + "nodeType": "ExpressionStatement", + "src": "1775:3:2" + }, + "nodeType": "ForStatement", + "src": "1736:142:2" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 283, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1894:5:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 260, + "id": 284, + "nodeType": "Return", + "src": "1887:12:2" + } + ] + }, + "documentation": null, + "id": 286, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "isOnWhiteList", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 257, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 256, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 286, + "src": "1682:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 255, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1682:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1681:18:2" + }, + "payable": false, + "returnParameters": { + "id": 260, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 259, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 286, + "src": "1720:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 258, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1720:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1719:6:2" + }, + "scope": 287, + "src": "1659:247:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 288, + "src": "204:1705:2" + } + ], + "src": "0:1910:2" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.049Z" +} \ No newline at end of file diff --git a/build/contracts/BasicToken.json b/build/contracts/BasicToken.json index 051521d..8e44530 100644 --- a/build/contracts/BasicToken.json +++ b/build/contracts/BasicToken.json @@ -1 +1,2102 @@ -{"contractName":"BasicToken","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":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":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506103cb806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610149565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610192565b604051808215151515815260200191505060405180910390f35b60005481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101cf57600080fd5b61022182600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461036890919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102b682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461038190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600082821115151561037657fe5b818303905092915050565b600080828401905083811015151561039557fe5b80915050929150505600a165627a7a72305820e2abe99ffd7ce9c87c8f0f465754a73faae1e978eeb84c2baa8e6f966b73ac190029"} \ No newline at end of file +{ + "contractName": "BasicToken", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "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": 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": "balance", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506103cb806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610149565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610192565b604051808215151515815260200191505060405180910390f35b60005481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101cf57600080fd5b61022182600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461036890919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102b682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461038190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600082821115151561037657fe5b818303905092915050565b600080828401905083811015151561039557fe5b80915050929150505600a165627a7a72305820e2abe99ffd7ce9c87c8f0f465754a73faae1e978eeb84c2baa8e6f966b73ac190029", + "deployedBytecode": "0x608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610149565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610192565b604051808215151515815260200191505060405180910390f35b60005481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101cf57600080fd5b61022182600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461036890919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102b682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461038190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600082821115151561037657fe5b818303905092915050565b600080828401905083811015151561039557fe5b80915050929150505600a165627a7a72305820e2abe99ffd7ce9c87c8f0f465754a73faae1e978eeb84c2baa8e6f966b73ac190029", + "sourceMap": "177:910:17:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;177:910:17;;;;;;;", + "deployedSourceMap": "177:910:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;179:26:19;;;;;;;;;;;;;;;;;;;;;;;973:111:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;973:111:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:334;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:334:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;;;:::o;973:111:17:-;1033:15;1063:8;:16;1072:6;1063:16;;;;;;;;;;;;;;;;1056:23;;973:111;;;:::o;437:334::-;500:4;535:1;520:17;;:3;:17;;;;512:26;;;;;;;;631:32;656:6;631:8;:20;640:10;631:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;608:8;:20;617:10;608:20;;;;;;;;;;;;;;;:55;;;;685:25;703:6;685:8;:13;694:3;685:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;669:8;:13;678:3;669:13;;;;;;;;;;;;;;;:41;;;;737:3;716:33;;725:10;716:33;;;742:6;716:33;;;;;;;;;;;;;;;;;;762:4;755:11;;437:334;;;;:::o;562:114:15:-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;680:133::-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o", + "source": "pragma solidity ^0.4.11;\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) balances;\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(_to != address(0));\n\n // SafeMath.sub will throw if there is not enough balance.\n balances[msg.sender] = balances[msg.sender].sub(_value);\n balances[_to] = balances[_to].add(_value);\n 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 constant returns (uint256 balance) {\n return balances[_owner];\n }\n\n}\n", + "sourcePath": "zeppelin-solidity/contracts/token/BasicToken.sol", + "ast": { + "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", + "exportedSymbols": { + "BasicToken": [ + 3026 + ] + }, + "id": 3027, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2951, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:17" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 2952, + "nodeType": "ImportDirective", + "scope": 3027, + "sourceUnit": 3099, + "src": "27:26:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "../math/SafeMath.sol", + "id": 2953, + "nodeType": "ImportDirective", + "scope": 3027, + "sourceUnit": 2894, + "src": "54:30:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2954, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3098, + "src": "200:10:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$3098", + "typeString": "contract ERC20Basic" + } + }, + "id": 2955, + "nodeType": "InheritanceSpecifier", + "src": "200:10:17" + } + ], + "contractDependencies": [ + 3098 + ], + "contractKind": "contract", + "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", + "fullyImplemented": true, + "id": 3026, + "linearizedBaseContracts": [ + 3026, + 3098 + ], + "name": "BasicToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 2958, + "libraryName": { + "contractScope": null, + "id": 2956, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2893, + "src": "221:8:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$2893", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "215:27:17", + "typeName": { + "id": 2957, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "234:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 2962, + "name": "balances", + "nodeType": "VariableDeclaration", + "scope": 3026, + "src": "246:36:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 2961, + "keyType": { + "id": 2959, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "254:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "246:27:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 2960, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "265:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 3012, + "nodeType": "Block", + "src": "506:265:17", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2972, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "520:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "535:1:17", + "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": 2973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "527:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "527:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "520:17:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2971, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "512:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "512:26:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2978, + "nodeType": "ExpressionStatement", + "src": "512:26:17" + }, + { + "expression": { + "argumentTypes": null, + "id": 2990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2979, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "608:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2982, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2980, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "617:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "617:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "608:20:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2988, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2966, + "src": "656:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2983, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "631:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2986, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2984, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "640:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "640:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "631:20:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "631:24:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 2989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "631:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "608:55:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2991, + "nodeType": "ExpressionStatement", + "src": "608:55:17" + }, + { + "expression": { + "argumentTypes": null, + "id": 3001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2992, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "669:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2994, + "indexExpression": { + "argumentTypes": null, + "id": 2993, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "678:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "669:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2999, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2966, + "src": "703:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2995, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "685:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2997, + "indexExpression": { + "argumentTypes": null, + "id": 2996, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "694:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "685:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 2892, + "src": "685:17:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "685:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "669:41:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3002, + "nodeType": "ExpressionStatement", + "src": "669:41:17" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3004, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "725:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "725:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3006, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "737:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3007, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2966, + "src": "742:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3003, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "716:8:17", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "716:33:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3009, + "nodeType": "ExpressionStatement", + "src": "716:33:17" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3010, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "762:4:17", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 2970, + "id": 3011, + "nodeType": "Return", + "src": "755:11:17" + } + ] + }, + "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": 3013, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2967, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2964, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 3013, + "src": "455:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "455:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2966, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3013, + "src": "468:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2965, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "468:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "454:29:17" + }, + "payable": false, + "returnParameters": { + "id": 2970, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2969, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3013, + "src": "500:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2968, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "500:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "499:6:17" + }, + "scope": 3026, + "src": "437:334:17", + "stateMutability": "nonpayable", + "superFunction": 3089, + "visibility": "public" + }, + { + "body": { + "id": 3024, + "nodeType": "Block", + "src": "1050:34:17", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3020, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1063:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3022, + "indexExpression": { + "argumentTypes": null, + "id": 3021, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3015, + "src": "1072:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1063:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3019, + "id": 3023, + "nodeType": "Return", + "src": "1056:23:17" + } + ] + }, + "documentation": "@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.", + "id": 3025, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3016, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3015, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 3025, + "src": "992:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "992:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "991:16:17" + }, + "payable": false, + "returnParameters": { + "id": 3019, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3018, + "name": "balance", + "nodeType": "VariableDeclaration", + "scope": 3025, + "src": "1033:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3017, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1033:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1032:17:17" + }, + "scope": 3026, + "src": "973:111:17", + "stateMutability": "view", + "superFunction": 3080, + "visibility": "public" + } + ], + "scope": 3027, + "src": "177:910:17" + } + ], + "src": "0:1088:17" + }, + "legacyAST": { + "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", + "exportedSymbols": { + "BasicToken": [ + 3026 + ] + }, + "id": 3027, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2951, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:17" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 2952, + "nodeType": "ImportDirective", + "scope": 3027, + "sourceUnit": 3099, + "src": "27:26:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "../math/SafeMath.sol", + "id": 2953, + "nodeType": "ImportDirective", + "scope": 3027, + "sourceUnit": 2894, + "src": "54:30:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2954, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3098, + "src": "200:10:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$3098", + "typeString": "contract ERC20Basic" + } + }, + "id": 2955, + "nodeType": "InheritanceSpecifier", + "src": "200:10:17" + } + ], + "contractDependencies": [ + 3098 + ], + "contractKind": "contract", + "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", + "fullyImplemented": true, + "id": 3026, + "linearizedBaseContracts": [ + 3026, + 3098 + ], + "name": "BasicToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 2958, + "libraryName": { + "contractScope": null, + "id": 2956, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2893, + "src": "221:8:17", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$2893", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "215:27:17", + "typeName": { + "id": 2957, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "234:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 2962, + "name": "balances", + "nodeType": "VariableDeclaration", + "scope": 3026, + "src": "246:36:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 2961, + "keyType": { + "id": 2959, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "254:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "246:27:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 2960, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "265:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 3012, + "nodeType": "Block", + "src": "506:265:17", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2972, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "520:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "535:1:17", + "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": 2973, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "527:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "527:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "520:17:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2971, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "512:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "512:26:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2978, + "nodeType": "ExpressionStatement", + "src": "512:26:17" + }, + { + "expression": { + "argumentTypes": null, + "id": 2990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2979, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "608:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2982, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2980, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "617:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "617:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "608:20:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2988, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2966, + "src": "656:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2983, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "631:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2986, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2984, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "640:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "640:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "631:20:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "631:24:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 2989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "631:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "608:55:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2991, + "nodeType": "ExpressionStatement", + "src": "608:55:17" + }, + { + "expression": { + "argumentTypes": null, + "id": 3001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2992, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "669:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2994, + "indexExpression": { + "argumentTypes": null, + "id": 2993, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "678:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "669:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2999, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2966, + "src": "703:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2995, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "685:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 2997, + "indexExpression": { + "argumentTypes": null, + "id": 2996, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "694:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "685:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 2892, + "src": "685:17:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "685:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "669:41:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3002, + "nodeType": "ExpressionStatement", + "src": "669:41:17" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3004, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "725:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "725:10:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3006, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2964, + "src": "737:3:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3007, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2966, + "src": "742:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3003, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "716:8:17", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "716:33:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3009, + "nodeType": "ExpressionStatement", + "src": "716:33:17" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3010, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "762:4:17", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 2970, + "id": 3011, + "nodeType": "Return", + "src": "755:11:17" + } + ] + }, + "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": 3013, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2967, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2964, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 3013, + "src": "455:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "455:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2966, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3013, + "src": "468:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2965, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "468:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "454:29:17" + }, + "payable": false, + "returnParameters": { + "id": 2970, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2969, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3013, + "src": "500:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2968, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "500:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "499:6:17" + }, + "scope": 3026, + "src": "437:334:17", + "stateMutability": "nonpayable", + "superFunction": 3089, + "visibility": "public" + }, + { + "body": { + "id": 3024, + "nodeType": "Block", + "src": "1050:34:17", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3020, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1063:8:17", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3022, + "indexExpression": { + "argumentTypes": null, + "id": 3021, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3015, + "src": "1072:6:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1063:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3019, + "id": 3023, + "nodeType": "Return", + "src": "1056:23:17" + } + ] + }, + "documentation": "@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.", + "id": 3025, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3016, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3015, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 3025, + "src": "992:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "992:7:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "991:16:17" + }, + "payable": false, + "returnParameters": { + "id": 3019, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3018, + "name": "balance", + "nodeType": "VariableDeclaration", + "scope": 3025, + "src": "1033:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3017, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1033:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1032:17:17" + }, + "scope": 3026, + "src": "973:111:17", + "stateMutability": "view", + "superFunction": 3080, + "visibility": "public" + } + ], + "scope": 3027, + "src": "177:910:17" + } + ], + "src": "0:1088:17" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.043Z" +} \ No newline at end of file diff --git a/build/contracts/Debug.json b/build/contracts/Debug.json index 131a497..da6b840 100644 --- a/build/contracts/Debug.json +++ b/build/contracts/Debug.json @@ -1 +1,772 @@ -{"contractName":"Debug","abi":[{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"address"}],"name":"LogAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"int256"}],"name":"LogInt","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"string"}],"name":"LogString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"uint256"}],"name":"LogUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes"}],"name":"LogBytes","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes32"}],"name":"LogBytes32","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bool"}],"name":"LogBool","type":"event"}],"bytecode":"0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058203e43a371eca5891e4ab433de8adde47e05099392d01faaeb6f856bb25b798cac0029"} \ No newline at end of file +{ + "contractName": "Debug", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a723058209f82e7c3f6ee115d751a8fc182e97d14bdc24eff083ac3eb7d18a54b9bfc56840029", + "deployedBytecode": "0x6080604052600080fd00a165627a7a723058209f82e7c3f6ee115d751a8fc182e97d14bdc24eff083ac3eb7d18a54b9bfc56840029", + "sourceMap": "117:244:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;117:244:1;;;;;;;", + "deployedSourceMap": "117:244:1:-;;;;;", + "source": "pragma solidity ^0.4.18;\n\n/*\n A contract you can inherit from that has some useful Events to print statements.\n*/\ncontract Debug {\n event LogAddress(address _msg);\n event LogInt(int _msg);\n event LogString(string _msg);\n event LogUint(uint _msg);\n event LogBytes(bytes _msg);\n event LogBytes32(bytes32 _msg);\n event LogBool(bool _msg);\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", + "exportedSymbols": { + "Debug": [ + 87 + ] + }, + "id": 88, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 58, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:1" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 87, + "linearizedBaseContracts": [ + 87 + ], + "name": "Debug", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 62, + "name": "LogAddress", + "nodeType": "EventDefinition", + "parameters": { + "id": 61, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 60, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 62, + "src": "155:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 59, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "155:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "154:14:1" + }, + "src": "138:31:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 66, + "name": "LogInt", + "nodeType": "EventDefinition", + "parameters": { + "id": 65, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 64, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 66, + "src": "187:8:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 63, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "187:3:1", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "186:10:1" + }, + "src": "174:23:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 70, + "name": "LogString", + "nodeType": "EventDefinition", + "parameters": { + "id": 69, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 68, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 70, + "src": "218:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 67, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "218:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "217:13:1" + }, + "src": "202:29:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 74, + "name": "LogUint", + "nodeType": "EventDefinition", + "parameters": { + "id": 73, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 72, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 74, + "src": "250:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 71, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "250:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "249:11:1" + }, + "src": "236:25:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 78, + "name": "LogBytes", + "nodeType": "EventDefinition", + "parameters": { + "id": 77, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 76, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 78, + "src": "281:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 75, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "281:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "280:12:1" + }, + "src": "266:27:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 82, + "name": "LogBytes32", + "nodeType": "EventDefinition", + "parameters": { + "id": 81, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 80, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 82, + "src": "315:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 79, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "315:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "314:14:1" + }, + "src": "298:31:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 86, + "name": "LogBool", + "nodeType": "EventDefinition", + "parameters": { + "id": 85, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 84, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 86, + "src": "348:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 83, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "348:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "347:11:1" + }, + "src": "334:25:1" + } + ], + "scope": 88, + "src": "117:244:1" + } + ], + "src": "0:362:1" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", + "exportedSymbols": { + "Debug": [ + 87 + ] + }, + "id": 88, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 58, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:1" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 87, + "linearizedBaseContracts": [ + 87 + ], + "name": "Debug", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 62, + "name": "LogAddress", + "nodeType": "EventDefinition", + "parameters": { + "id": 61, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 60, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 62, + "src": "155:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 59, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "155:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "154:14:1" + }, + "src": "138:31:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 66, + "name": "LogInt", + "nodeType": "EventDefinition", + "parameters": { + "id": 65, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 64, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 66, + "src": "187:8:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 63, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "187:3:1", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "186:10:1" + }, + "src": "174:23:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 70, + "name": "LogString", + "nodeType": "EventDefinition", + "parameters": { + "id": 69, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 68, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 70, + "src": "218:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 67, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "218:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "217:13:1" + }, + "src": "202:29:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 74, + "name": "LogUint", + "nodeType": "EventDefinition", + "parameters": { + "id": 73, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 72, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 74, + "src": "250:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 71, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "250:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "249:11:1" + }, + "src": "236:25:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 78, + "name": "LogBytes", + "nodeType": "EventDefinition", + "parameters": { + "id": 77, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 76, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 78, + "src": "281:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 75, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "281:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "280:12:1" + }, + "src": "266:27:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 82, + "name": "LogBytes32", + "nodeType": "EventDefinition", + "parameters": { + "id": 81, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 80, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 82, + "src": "315:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 79, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "315:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "314:14:1" + }, + "src": "298:31:1" + }, + { + "anonymous": false, + "documentation": null, + "id": 86, + "name": "LogBool", + "nodeType": "EventDefinition", + "parameters": { + "id": 85, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 84, + "indexed": false, + "name": "_msg", + "nodeType": "VariableDeclaration", + "scope": 86, + "src": "348:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 83, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "348:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "347:11:1" + }, + "src": "334:25:1" + } + ], + "scope": 88, + "src": "117:244:1" + } + ], + "src": "0:362:1" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.041Z" +} \ No newline at end of file diff --git a/build/contracts/ERC20.json b/build/contracts/ERC20.json index 12df321..bfda7a5 100644 --- a/build/contracts/ERC20.json +++ b/build/contracts/ERC20.json @@ -1 +1,1237 @@ -{"contractName":"ERC20","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"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":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x"} \ No newline at end of file +{ + "contractName": "ERC20", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "who", + "type": "address" + } + ], + "name": "balanceOf", + "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" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "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": "owner", + "type": "address" + }, + { + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "from", + "type": "address" + }, + { + "name": "to", + "type": "address" + }, + { + "name": "value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "spender", + "type": "address" + }, + { + "name": "value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "pragma solidity ^0.4.11;\n\n\nimport './ERC20Basic.sol';\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n", + "sourcePath": "zeppelin-solidity/contracts/token/ERC20.sol", + "ast": { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", + "exportedSymbols": { + "ERC20": [ + 3069 + ] + }, + "id": 3070, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3028, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:18" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 3029, + "nodeType": "ImportDirective", + "scope": 3070, + "sourceUnit": 3099, + "src": "27:26:18", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3030, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3098, + "src": "163:10:18", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$3098", + "typeString": "contract ERC20Basic" + } + }, + "id": 3031, + "nodeType": "InheritanceSpecifier", + "src": "163:10:18" + } + ], + "contractDependencies": [ + 3098 + ], + "contractKind": "contract", + "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", + "fullyImplemented": false, + "id": 3069, + "linearizedBaseContracts": [ + 3069, + 3098 + ], + "name": "ERC20", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 3040, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3036, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3033, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 3040, + "src": "197:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3032, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "197:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3035, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 3040, + "src": "212:15:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3034, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "212:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "196:32:18" + }, + "payable": false, + "returnParameters": { + "id": 3039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3038, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3040, + "src": "254:7:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3037, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "254:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "253:9:18" + }, + "scope": 3069, + "src": "178:85:18", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3051, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3042, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "288:12:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3041, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "288:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3044, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "302:10:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3043, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "302:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3046, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "314:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3045, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "314:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "287:41:18" + }, + "payable": false, + "returnParameters": { + "id": 3050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3049, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "345:4:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3048, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "345:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "344:6:18" + }, + "scope": 3069, + "src": "266:85:18", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3060, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3056, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3053, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 3060, + "src": "371:15:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3052, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "371:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3055, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3060, + "src": "388:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3054, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "388:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "370:32:18" + }, + "payable": false, + "returnParameters": { + "id": 3059, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3058, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3060, + "src": "419:4:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3057, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "419:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "418:6:18" + }, + "scope": 3069, + "src": "354:71:18", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 3068, + "name": "Approval", + "nodeType": "EventDefinition", + "parameters": { + "id": 3067, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3062, + "indexed": true, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 3068, + "src": "443:21:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "443:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3064, + "indexed": true, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 3068, + "src": "466:23:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "466:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3066, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3068, + "src": "491:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3065, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "491:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "442:63:18" + }, + "src": "428:78:18" + } + ], + "scope": 3070, + "src": "145:363:18" + } + ], + "src": "0:509:18" + }, + "legacyAST": { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", + "exportedSymbols": { + "ERC20": [ + 3069 + ] + }, + "id": 3070, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3028, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:18" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 3029, + "nodeType": "ImportDirective", + "scope": 3070, + "sourceUnit": 3099, + "src": "27:26:18", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3030, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3098, + "src": "163:10:18", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$3098", + "typeString": "contract ERC20Basic" + } + }, + "id": 3031, + "nodeType": "InheritanceSpecifier", + "src": "163:10:18" + } + ], + "contractDependencies": [ + 3098 + ], + "contractKind": "contract", + "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", + "fullyImplemented": false, + "id": 3069, + "linearizedBaseContracts": [ + 3069, + 3098 + ], + "name": "ERC20", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 3040, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3036, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3033, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 3040, + "src": "197:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3032, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "197:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3035, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 3040, + "src": "212:15:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3034, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "212:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "196:32:18" + }, + "payable": false, + "returnParameters": { + "id": 3039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3038, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3040, + "src": "254:7:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3037, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "254:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "253:9:18" + }, + "scope": 3069, + "src": "178:85:18", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3051, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3042, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "288:12:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3041, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "288:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3044, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "302:10:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3043, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "302:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3046, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "314:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3045, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "314:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "287:41:18" + }, + "payable": false, + "returnParameters": { + "id": 3050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3049, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3051, + "src": "345:4:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3048, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "345:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "344:6:18" + }, + "scope": 3069, + "src": "266:85:18", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3060, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3056, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3053, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 3060, + "src": "371:15:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3052, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "371:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3055, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3060, + "src": "388:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3054, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "388:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "370:32:18" + }, + "payable": false, + "returnParameters": { + "id": 3059, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3058, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3060, + "src": "419:4:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3057, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "419:4:18", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "418:6:18" + }, + "scope": 3069, + "src": "354:71:18", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 3068, + "name": "Approval", + "nodeType": "EventDefinition", + "parameters": { + "id": 3067, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3062, + "indexed": true, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 3068, + "src": "443:21:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "443:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3064, + "indexed": true, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 3068, + "src": "466:23:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "466:7:18", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3066, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3068, + "src": "491:13:18", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3065, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "491:7:18", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "442:63:18" + }, + "src": "428:78:18" + } + ], + "scope": 3070, + "src": "145:363:18" + } + ], + "src": "0:509:18" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.044Z" +} \ No newline at end of file diff --git a/build/contracts/ERC20Basic.json b/build/contracts/ERC20Basic.json index 6ce0c1b..62c904b 100644 --- a/build/contracts/ERC20Basic.json +++ b/build/contracts/ERC20Basic.json @@ -1 +1,806 @@ -{"contractName":"ERC20Basic","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":"who","type":"address"}],"name":"balanceOf","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"}],"bytecode":"0x"} \ No newline at end of file +{ + "contractName": "ERC20Basic", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "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": "who", + "type": "address" + } + ], + "name": "balanceOf", + "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" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "pragma solidity ^0.4.11;\n\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n", + "sourcePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "ast": { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "exportedSymbols": { + "ERC20Basic": [ + 3098 + ] + }, + "id": 3099, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3071, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:19" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", + "fullyImplemented": false, + "id": 3098, + "linearizedBaseContracts": [ + 3098 + ], + "name": "ERC20Basic", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3073, + "name": "totalSupply", + "nodeType": "VariableDeclaration", + "scope": 3098, + "src": "179:26:19", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3072, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "179:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3080, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3076, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3075, + "name": "who", + "nodeType": "VariableDeclaration", + "scope": 3080, + "src": "228:11:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3074, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "228:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "227:13:19" + }, + "payable": false, + "returnParameters": { + "id": 3079, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3078, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3080, + "src": "266:7:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3077, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "266:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "265:9:19" + }, + "scope": 3098, + "src": "209:66:19", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3089, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3082, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 3089, + "src": "296:10:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3081, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "296:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3084, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3089, + "src": "308:13:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3083, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "308:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "295:27:19" + }, + "payable": false, + "returnParameters": { + "id": 3088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3087, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3089, + "src": "339:4:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3086, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "339:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "338:6:19" + }, + "scope": 3098, + "src": "278:67:19", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 3097, + "name": "Transfer", + "nodeType": "EventDefinition", + "parameters": { + "id": 3096, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3091, + "indexed": true, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 3097, + "src": "363:20:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3090, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "363:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3093, + "indexed": true, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 3097, + "src": "385:18:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3092, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "385:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3095, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3097, + "src": "405:13:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3094, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "405:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "362:57:19" + }, + "src": "348:72:19" + } + ], + "scope": 3099, + "src": "155:267:19" + } + ], + "src": "0:423:19" + }, + "legacyAST": { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", + "exportedSymbols": { + "ERC20Basic": [ + 3098 + ] + }, + "id": 3099, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3071, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:19" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", + "fullyImplemented": false, + "id": 3098, + "linearizedBaseContracts": [ + 3098 + ], + "name": "ERC20Basic", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3073, + "name": "totalSupply", + "nodeType": "VariableDeclaration", + "scope": 3098, + "src": "179:26:19", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3072, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "179:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3080, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3076, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3075, + "name": "who", + "nodeType": "VariableDeclaration", + "scope": 3080, + "src": "228:11:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3074, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "228:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "227:13:19" + }, + "payable": false, + "returnParameters": { + "id": 3079, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3078, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3080, + "src": "266:7:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3077, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "266:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "265:9:19" + }, + "scope": 3098, + "src": "209:66:19", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 3089, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3082, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 3089, + "src": "296:10:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3081, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "296:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3084, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3089, + "src": "308:13:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3083, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "308:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "295:27:19" + }, + "payable": false, + "returnParameters": { + "id": 3088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3087, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3089, + "src": "339:4:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3086, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "339:4:19", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "338:6:19" + }, + "scope": 3098, + "src": "278:67:19", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 3097, + "name": "Transfer", + "nodeType": "EventDefinition", + "parameters": { + "id": 3096, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3091, + "indexed": true, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 3097, + "src": "363:20:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3090, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "363:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3093, + "indexed": true, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 3097, + "src": "385:18:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3092, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "385:7:19", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3095, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 3097, + "src": "405:13:19", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3094, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "405:7:19", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "362:57:19" + }, + "src": "348:72:19" + } + ], + "scope": 3099, + "src": "155:267:19" + } + ], + "src": "0:423:19" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.044Z" +} \ No newline at end of file diff --git a/build/contracts/Likes.json b/build/contracts/Likes.json index 63149f8..3f21be8 100644 --- a/build/contracts/Likes.json +++ b/build/contracts/Likes.json @@ -1 +1,8314 @@ -{"contractName":"Likes","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_liked","type":"bool"}],"name":"LogLikeVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_liked","type":"bool"}],"name":"likeVideo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"userDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidLikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"vidDislikes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userLikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_videoId","type":"string"}],"name":"userDislikesVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137a83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611276806101046000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bdc565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d1a565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610e0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e32565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f70565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fb9565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f5565b005b600080600080339350856040516020018082805190602001908083835b6020831015156104d957805182526020820191506020810190506020830392506104b4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610542578051825260208201915060208101905060208303925061051d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061057b8487610bdc565b91506105878487610e32565b90508480156105935750815b1561059d57610bd4565b841580156105a85750805b156105b257610bd4565b841561086e576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610791576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610831578082015181840152602081019050610816565b50505050905090810190601f16801561085e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610bd3576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600760008560001916600019168152602001908152602001600020600082825401925050819055508115610a4e576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610aee578082015181840152602081019050610ad3565b50505050905090810190601f168015610b1b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610c585780518252602082019150602081019050602083039250610c33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610cc15780518252602082019150602081019050602083039250610c9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040516020018082805190602001908083835b602083101515610d595780518252602082019150602081019050602083039250610d34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610dc25780518252602082019150602081019050602083039250610d9d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610eae5780518252602082019150602081019050602083039250610e89565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f175780518252602082019150602081019050602083039250610ef2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040516020018082805190602001908083835b602083101515610ff85780518252602082019150602081019050602083039250610fd3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611061578051825260208201915060208101905060208303925061103c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582019d3ccba40ef6eb90ba034aeaa666d698ea7528202491f500892941061256e7d0029"} \ No newline at end of file +{ + "contractName": "Likes", + "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": [ + { + "name": "_paratiiRegistry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_address", + "type": "address" + }, + { + "indexed": false, + "name": "_videoId", + "type": "string" + }, + { + "indexed": false, + "name": "_liked", + "type": "bool" + } + ], + "name": "LogLikeVideo", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + }, + { + "name": "_liked", + "type": "bool" + } + ], + "name": "likeVideo", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "userLikes", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "userDislikes", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "vidLikes", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "vidDislikes", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_address", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "userLikesVideo", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_address", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "userDislikesVideo", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405160208061137a83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611276806101046000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bdc565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d1a565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610e0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e32565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f70565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fb9565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f5565b005b600080600080339350856040516020018082805190602001908083835b6020831015156104d957805182526020820191506020810190506020830392506104b4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610542578051825260208201915060208101905060208303925061051d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061057b8487610bdc565b91506105878487610e32565b90508480156105935750815b1561059d57610bd4565b841580156105a85750805b156105b257610bd4565b841561086e576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610791576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610831578082015181840152602081019050610816565b50505050905090810190601f16801561085e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610bd3576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600760008560001916600019168152602001908152602001600020600082825401925050819055508115610a4e576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610aee578082015181840152602081019050610ad3565b50505050905090810190601f168015610b1b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610c585780518252602082019150602081019050602083039250610c33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610cc15780518252602082019150602081019050602083039250610c9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040516020018082805190602001908083835b602083101515610d595780518252602082019150602081019050602083039250610d34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610dc25780518252602082019150602081019050602083039250610d9d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610eae5780518252602082019150602081019050602083039250610e89565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f175780518252602082019150602081019050602083039250610ef2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040516020018082805190602001908083835b602083101515610ff85780518252602082019150602081019050602083039250610fd3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611061578051825260208201915060208101905060208303925061103c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820a970b5405ed3895a764e46c3c68b80c65aad7f207d4b335aae4be5f1a06228d40029", + "deployedBytecode": "0x608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063075ca0d31461009e57806335068bef146101135780637b0aadea146101b45780638da5cb5b146102315780638f886d9414610288578063a822f11f14610329578063d834913314610380578063e8d5b22d146103fd578063f2fde38b14610454575b600080fd5b3480156100aa57600080fd5b50610111600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803515159060200190929190505050610497565b005b34801561011f57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610bdc565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b5061021b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d1a565b6040518082815260200191505060405180910390f35b34801561023d57600080fd5b50610246610e0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029457600080fd5b5061030f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e32565b604051808215151515815260200191505060405180910390f35b34801561033557600080fd5b5061036a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f70565b6040518082815260200191505060405180910390f35b34801561038c57600080fd5b506103e7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610fb9565b6040518082815260200191505060405180910390f35b34801561040957600080fd5b5061043e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b6040518082815260200191505060405180910390f35b34801561046057600080fd5b50610495600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f5565b005b600080600080339350856040516020018082805190602001908083835b6020831015156104d957805182526020820191506020810190506020830392506104b4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610542578051825260208201915060208101905060208303925061051d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020925061057b8487610bdc565b91506105878487610e32565b90508480156105935750815b1561059d57610bd4565b841580156105a85750805b156105b257610bd4565b841561086e576001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600660008560001916600019168152602001908152602001600020600082825401925050819055508015610791576000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600760008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610831578082015181840152602081019050610816565b50505050905090810190601f16801561085e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15b841515610bd3576001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506001600760008560001916600019168152602001908152602001600020600082825401925050819055508115610a4e576000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600660008560001916600019168152602001908152602001600020600082825403925050819055505b7fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d3054848787604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610aee578082015181840152602081019050610ad3565b50505050905090810190601f168015610b1b5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a17fa7f48f489e5528c34ca196632deb780c27875fcc3040ed926a744d67aa2d30548486604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825260108152602001807f7468697320706173736564206865726500000000000000000000000000000000815250602001935050505060405180910390a15b5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610c585780518252602082019150602081019050602083039250610c33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610cc15780518252602082019150602081019050602083039250610c9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b600060076000836040516020018082805190602001908083835b602083101515610d595780518252602082019150602081019050602083039250610d34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610dc25780518252602082019150602081019050602083039250610d9d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610eae5780518252602082019150602081019050602083039250610e89565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f175780518252602082019150602081019050602083039250610ef2565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600060066000836040516020018082805190602001908083835b602083101515610ff85780518252602082019150602081019050602083039250610fd3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611061578051825260208201915060208101905060208303925061103c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561115057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a72305820a970b5405ed3895a764e46c3c68b80c65aad7f207d4b335aae4be5f1a06228d40029", + "sourceMap": "168:3306:3:-;;;736:125;8:9:-1;5:2;;;30:1;27;20:12;5:2;736:125:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;800:10:3;792:5;;:18;;;;;;;;;;;;;;;;;;838:16;820:15;;:34;;;;;;;;;;;;;;;;;;736:125;168:3306;;;;;;", + "deployedSourceMap": "168:3306:3:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;867:1621;;8:9:-1;5:2;;;30:1;27;20:12;5:2;867:1621:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3132:164;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3132:164:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2987:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2987:139:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;3302:170:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3302:170:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2728:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2728:114:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2848:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2848:133:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2494:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2494:107:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;867:1621:3;933:16;972:18;1040:20;1107:23;952:10;933:29;;1020:8;1003:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1003:26:3;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1003:26:3;;;993:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;993:37:3;;;;;;;;;;;;;;;;972:58;;1063:34;1078:8;1088;1063:14;:34::i;:::-;1040:57;;1133:37;1151:8;1161;1133:17;:37::i;:::-;1107:63;;1185:6;:25;;;;;1195:15;1185:25;1181:118;;;1282:7;;1181:118;1314:6;1313:7;:29;;;;;1324:18;1313:29;1309:125;;;1417:7;;1309:125;1448:6;1444:481;;;1568:4;1537:6;:16;1544:8;1537:16;;;;;;;;;;;;;;;:28;1554:10;1537:28;;;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;1610:1;1586:10;:20;1597:8;1586:20;;;;;;;;;;;;;;;;:25;;;;;;;;;;;1650:1;1625:9;:21;1635:10;1625:21;;;;;;;;;;;;;;;;;;:26;;;;;;;;;;;1670:18;1666:189;;;1742:5;1708:9;:19;1718:8;1708:19;;;;;;;;;;;;;;;:31;1728:10;1708:31;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;1792:1;1765:13;:23;1779:8;1765:23;;;;;;;;;;;;;;;;:28;;;;;;;;;;;1839:1;1811:12;:24;1824:10;1811:24;;;;;;;;;;;;;;;;;;:29;;;;;;;;;;;1666:189;1874:40;1887:8;1897;1907:6;1874:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1874:40:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1444:481;1940:6;1939:7;1935:547;;;2063:4;2029:9;:19;2039:8;2029:19;;;;;;;;;;;;;;;:31;2049:10;2029:31;;;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;2108:1;2081:13;:23;2095:8;2081:23;;;;;;;;;;;;;;;;:28;;;;;;;;;;;2151:1;2123:12;:24;2136:10;2123:24;;;;;;;;;;;;;;;;;;:29;;;;;;;;;;;2171:15;2167:177;;;2237:5;2206:6;:16;2213:8;2206:16;;;;;;;;;;;;;;;:28;2223:10;2206:28;;;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;2284:1;2260:10;:20;2271:8;2260:20;;;;;;;;;;;;;;;;:25;;;;;;;;;;;2328:1;2303:9;:21;2313:10;2303:21;;;;;;;;;;;;;;;;;;:26;;;;;;;;;;;2167:177;2362:40;2375:8;2385;2395:6;2362:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2362:40:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2421:50;2434:8;2464:6;2421:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1935:547;867:1621;;;;;;;:::o;3132:164::-;3211:4;3234:6;:16;3241:8;3234:16;;;;;;;;;;;;;;;:55;3278:8;3261:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3261:26:3;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3261:26:3;;;3251:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3251:37:3;;;;;;;;;;;;;;;;3234:55;;;;;;;;;;;;;;;;;;;;;;;;;;;3227:62;;3132:164;;;;:::o;2987:139::-;3045:4;3068:12;:51;3108:8;3091:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3091:26:3;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3091:26:3;;;3081:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3081:37:3;;;;;;;;;;;;;;;;3068:51;;;;;;;;;;;;;;;;;;3061:58;;2987:139;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;3302:170:3:-;3384:4;3407:9;:19;3417:8;3407:19;;;;;;;;;;;;;;;:58;3454:8;3437:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3437:26:3;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3437:26:3;;;3427:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3427:37:3;;;;;;;;;;;;;;;;3407:58;;;;;;;;;;;;;;;;;;;;;;;;;;;3400:65;;3302:170;;;;:::o;2728:114::-;2788:4;2812:13;:23;2826:8;2812:23;;;;;;;;;;;;;;;;2805:30;;2728:114;;;:::o;2848:133::-;2903:4;2926:9;:48;2963:8;2946:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2946:26:3;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2946:26:3;;;2936:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2936:37:3;;;;;;;;;;;;;;;;2926:48;;;;;;;;;;;;;;;;;;2919:55;;2848:133;;;:::o;2494:107::-;2551:4;2574:10;:20;2585:8;2574:20;;;;;;;;;;;;;;;;2567:27;;2494:107;;;:::o;827:169:16:-;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.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Registry.sol\";\n\ncontract Likes is Ownable {\n\n address paratiiRegistry;\n\n // mapping from user addrsses and video ids to booleans\n mapping (address=> mapping (bytes32 => bool)) private _likes;\n mapping (address=> mapping (bytes32 => bool)) private _dislikes;\n // total of liks on a video\n mapping (address => uint) private _userLikes;\n mapping (address => uint) private _userDislikes;\n mapping (bytes32 => uint) private _vidLikes;\n mapping (bytes32 => uint) private _vidDislikes;\n\n event LogLikeVideo(address _address, string _videoId, bool _liked);\n\n constructor(Registry _paratiiRegistry) public {\n owner = msg.sender;\n paratiiRegistry = _paratiiRegistry;\n }\n\n function likeVideo(string _videoId, bool _liked) public {\n address _address = msg.sender;\n bytes32 _videoHash = keccak256(abi.encodePacked(_videoId));\n bool _userLikesVideo = userLikesVideo(_address, _videoId);\n bool _userDislikesVideo = userDislikesVideo(_address, _videoId);\n\n if (_liked && _userLikesVideo) {\n // this user already liked the video before\n return;\n }\n\n if (!_liked && _userDislikesVideo) {\n // this user already disliked the video before\n return;\n }\n\n if (_liked) {\n // msg.sender likes his video and did not do so before\n _likes[_address][_videoHash] = true;\n _userLikes[_address] += 1;\n _vidLikes[_videoHash] += 1;\n\n if (_userDislikesVideo) {\n _dislikes[_address][_videoHash] = false;\n _userDislikes[_address] -= 1;\n _vidDislikes[_videoHash] -= 1;\n }\n\n emit LogLikeVideo(_address, _videoId, _liked);\n }\n\n if (!_liked) {\n // msg.sender likes his video and did not do so before\n _dislikes[_address][_videoHash] = true;\n _userDislikes[_address] += 1;\n _vidDislikes[_videoHash] += 1;\n\n if (_userLikesVideo) {\n _likes[_address][_videoHash] = false;\n _userLikes[_address] -= 1;\n _vidLikes[_videoHash] -= 1;\n }\n emit LogLikeVideo(_address, _videoId, _liked);\n emit LogLikeVideo(_address, \"this passed here\", _liked);\n }\n }\n\n function userLikes(address _address) public view returns(uint) {\n return _userLikes[_address];\n }\n\n /**\n * @dev returns total of dislikes registered by this user\n * @param _address Address of the user\n */\n function userDislikes(address _address) public view returns(uint) {\n return _userDislikes[_address];\n }\n\n function vidLikes(string _videoId) public view returns(uint) {\n return _vidLikes[keccak256(abi.encodePacked(_videoId))];\n }\n\n function vidDislikes(string _videoId) public view returns(uint) {\n return _vidDislikes[keccak256(abi.encodePacked(_videoId))];\n }\n\n function userLikesVideo(address _address, string _videoId) public view returns(bool) {\n return _likes[_address][keccak256(abi.encodePacked(_videoId))];\n }\n\n function userDislikesVideo(address _address, string _videoId) public view returns(bool) {\n return _dislikes[_address][keccak256(abi.encodePacked(_videoId))];\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Likes.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Likes.sol", + "exportedSymbols": { + "Likes": [ + 608 + ] + }, + "id": 609, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 289, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:3" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 290, + "nodeType": "ImportDirective", + "scope": 609, + "sourceUnit": 2950, + "src": "26:59:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 291, + "nodeType": "ImportDirective", + "scope": 609, + "sourceUnit": 2894, + "src": "86:55:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 292, + "nodeType": "ImportDirective", + "scope": 609, + "sourceUnit": 1157, + "src": "142:24:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 293, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "186:7:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 294, + "nodeType": "InheritanceSpecifier", + "src": "186:7:3" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 608, + "linearizedBaseContracts": [ + 608, + 2949 + ], + "name": "Likes", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 296, + "name": "paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "201:23:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 295, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "201:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 302, + "name": "_likes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "291:60:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "typeName": { + "id": 301, + "keyType": { + "id": 297, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "300:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "291:45:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 300, + "keyType": { + "id": 298, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "319:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "310:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 299, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "330:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 308, + "name": "_dislikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "357:63:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "typeName": { + "id": 307, + "keyType": { + "id": 303, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "366:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "357:45:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 306, + "keyType": { + "id": 304, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "385:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "376:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 305, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "396:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 312, + "name": "_userLikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "458:44:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 311, + "keyType": { + "id": 309, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "467:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "458:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 310, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "478:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 316, + "name": "_userDislikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "508:47:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 315, + "keyType": { + "id": 313, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "517:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "508:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 314, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "528:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 320, + "name": "_vidLikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "561:43:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "typeName": { + "id": 319, + "keyType": { + "id": 317, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "570:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "561:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 318, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "581:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 324, + "name": "_vidDislikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "610:46:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "typeName": { + "id": 323, + "keyType": { + "id": 321, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "619:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "610:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 322, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "630:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 332, + "name": "LogLikeVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 331, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 326, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 332, + "src": "682:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 325, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "682:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 328, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 332, + "src": "700:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 327, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "700:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 330, + "indexed": false, + "name": "_liked", + "nodeType": "VariableDeclaration", + "scope": 332, + "src": "717:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 329, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "717:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "681:48:3" + }, + "src": "663:67:3" + }, + { + "body": { + "id": 346, + "nodeType": "Block", + "src": "782:79:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 337, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "792:5:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 338, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "800:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "800:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "792:18:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 341, + "nodeType": "ExpressionStatement", + "src": "792:18:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 342, + "name": "paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 296, + "src": "820:15:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 343, + "name": "_paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "838:16:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "820:34:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 345, + "nodeType": "ExpressionStatement", + "src": "820:34:3" + } + ] + }, + "documentation": null, + "id": 347, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 335, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 334, + "name": "_paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 347, + "src": "748:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 333, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "748:8:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "747:27:3" + }, + "payable": false, + "returnParameters": { + "id": 336, + "nodeType": "ParameterList", + "parameters": [], + "src": "782:0:3" + }, + "scope": 608, + "src": "736:125:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 506, + "nodeType": "Block", + "src": "923:1565:3", + "statements": [ + { + "assignments": [ + 355 + ], + "declarations": [ + { + "constant": false, + "id": 355, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "933:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 354, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "933:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 358, + "initialValue": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 356, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "952:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "952:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "933:29:3" + }, + { + "assignments": [ + 360 + ], + "declarations": [ + { + "constant": false, + "id": 360, + "name": "_videoHash", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "972:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 359, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "972:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 367, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 364, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1020:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 362, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1003:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1003:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1003:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 361, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "993:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "993:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "972:58:3" + }, + { + "assignments": [ + 369 + ], + "declarations": [ + { + "constant": false, + "id": 369, + "name": "_userLikesVideo", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "1040:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 368, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1040:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 374, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 371, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1078:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 372, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1088:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 370, + "name": "userLikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 586, + "src": "1063:14:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (address,string memory) view returns (bool)" + } + }, + "id": 373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1063:34:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1040:57:3" + }, + { + "assignments": [ + 376 + ], + "declarations": [ + { + "constant": false, + "id": 376, + "name": "_userDislikesVideo", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "1107:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 375, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1107:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 381, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 378, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1151:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 379, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1161:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 377, + "name": "userDislikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 607, + "src": "1133:17:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (address,string memory) view returns (bool)" + } + }, + "id": 380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1133:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1107:63:3" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 382, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1185:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "id": 383, + "name": "_userLikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "1195:15:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1185:25:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 387, + "nodeType": "IfStatement", + "src": "1181:118:3", + "trueBody": { + "id": 386, + "nodeType": "Block", + "src": "1212:87:3", + "statements": [ + { + "expression": null, + "functionReturnParameters": 353, + "id": 385, + "nodeType": "Return", + "src": "1282:7:3" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1313:7:3", + "subExpression": { + "argumentTypes": null, + "id": 388, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1314:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "id": 390, + "name": "_userDislikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 376, + "src": "1324:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1313:29:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 394, + "nodeType": "IfStatement", + "src": "1309:125:3", + "trueBody": { + "id": 393, + "nodeType": "Block", + "src": "1344:90:3", + "statements": [ + { + "expression": null, + "functionReturnParameters": 353, + "id": 392, + "nodeType": "Return", + "src": "1417:7:3" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "id": 395, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1448:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 446, + "nodeType": "IfStatement", + "src": "1444:481:3", + "trueBody": { + "id": 445, + "nodeType": "Block", + "src": "1456:469:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 396, + "name": "_likes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 302, + "src": "1537:6:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 399, + "indexExpression": { + "argumentTypes": null, + "id": 397, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1544:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1537:16:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 400, + "indexExpression": { + "argumentTypes": null, + "id": 398, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1554:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1537:28:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 401, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1568:4:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "1537:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 403, + "nodeType": "ExpressionStatement", + "src": "1537:35:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 404, + "name": "_userLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 312, + "src": "1586:10:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 406, + "indexExpression": { + "argumentTypes": null, + "id": 405, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1597:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1586:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1610:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1586:25:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 409, + "nodeType": "ExpressionStatement", + "src": "1586:25:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 410, + "name": "_vidLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 320, + "src": "1625:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 412, + "indexExpression": { + "argumentTypes": null, + "id": 411, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1635:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1625:21:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1650:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1625:26:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 415, + "nodeType": "ExpressionStatement", + "src": "1625:26:3" + }, + { + "condition": { + "argumentTypes": null, + "id": 416, + "name": "_userDislikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 376, + "src": "1670:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 438, + "nodeType": "IfStatement", + "src": "1666:189:3", + "trueBody": { + "id": 437, + "nodeType": "Block", + "src": "1690:165:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 417, + "name": "_dislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 308, + "src": "1708:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 420, + "indexExpression": { + "argumentTypes": null, + "id": 418, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1718:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1708:19:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 421, + "indexExpression": { + "argumentTypes": null, + "id": 419, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1728:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1708:31:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 422, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1742:5:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "1708:39:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 424, + "nodeType": "ExpressionStatement", + "src": "1708:39:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 425, + "name": "_userDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 316, + "src": "1765:13:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 427, + "indexExpression": { + "argumentTypes": null, + "id": 426, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1779:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1765:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1792:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1765:28:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 430, + "nodeType": "ExpressionStatement", + "src": "1765:28:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 431, + "name": "_vidDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "1811:12:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 433, + "indexExpression": { + "argumentTypes": null, + "id": 432, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1824:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1811:24:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1839:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1811:29:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 436, + "nodeType": "ExpressionStatement", + "src": "1811:29:3" + } + ] + } + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 440, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1887:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 441, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1897:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 442, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1907:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 439, + "name": "LogLikeVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "1874:12:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,string memory,bool)" + } + }, + "id": 443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1874:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 444, + "nodeType": "EmitStatement", + "src": "1869:45:3" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "id": 448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1939:7:3", + "subExpression": { + "argumentTypes": null, + "id": 447, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1940:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 505, + "nodeType": "IfStatement", + "src": "1935:547:3", + "trueBody": { + "id": 504, + "nodeType": "Block", + "src": "1948:534:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 449, + "name": "_dislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 308, + "src": "2029:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 452, + "indexExpression": { + "argumentTypes": null, + "id": 450, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2039:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2029:19:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 453, + "indexExpression": { + "argumentTypes": null, + "id": 451, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2049:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2029:31:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2063:4:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "2029:38:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 456, + "nodeType": "ExpressionStatement", + "src": "2029:38:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 457, + "name": "_userDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 316, + "src": "2081:13:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 459, + "indexExpression": { + "argumentTypes": null, + "id": 458, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2095:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2081:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2108:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2081:28:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 462, + "nodeType": "ExpressionStatement", + "src": "2081:28:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 463, + "name": "_vidDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "2123:12:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 465, + "indexExpression": { + "argumentTypes": null, + "id": 464, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2136:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2123:24:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2151:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2123:29:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 468, + "nodeType": "ExpressionStatement", + "src": "2123:29:3" + }, + { + "condition": { + "argumentTypes": null, + "id": 469, + "name": "_userLikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "2171:15:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 491, + "nodeType": "IfStatement", + "src": "2167:177:3", + "trueBody": { + "id": 490, + "nodeType": "Block", + "src": "2188:156:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 470, + "name": "_likes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 302, + "src": "2206:6:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 473, + "indexExpression": { + "argumentTypes": null, + "id": 471, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2213:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2206:16:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 474, + "indexExpression": { + "argumentTypes": null, + "id": 472, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2223:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2206:28:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2237:5:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "2206:36:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 477, + "nodeType": "ExpressionStatement", + "src": "2206:36:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 478, + "name": "_userLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 312, + "src": "2260:10:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 480, + "indexExpression": { + "argumentTypes": null, + "id": 479, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2271:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2260:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2284:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2260:25:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 483, + "nodeType": "ExpressionStatement", + "src": "2260:25:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 484, + "name": "_vidLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 320, + "src": "2303:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 486, + "indexExpression": { + "argumentTypes": null, + "id": 485, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2313:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2303:21:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 487, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2328:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2303:26:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 489, + "nodeType": "ExpressionStatement", + "src": "2303:26:3" + } + ] + } + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 493, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2375:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 494, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "2385:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 495, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "2395:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 492, + "name": "LogLikeVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "2362:12:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,string memory,bool)" + } + }, + "id": 496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2362:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 497, + "nodeType": "EmitStatement", + "src": "2357:45:3" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 499, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2434:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "hexValue": "74686973207061737365642068657265", + "id": 500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2444:18:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", + "typeString": "literal_string \"this passed here\"" + }, + "value": "this passed here" + }, + { + "argumentTypes": null, + "id": 501, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "2464:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", + "typeString": "literal_string \"this passed here\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 498, + "name": "LogLikeVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "2421:12:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,string memory,bool)" + } + }, + "id": 502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2421:50:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 503, + "nodeType": "EmitStatement", + "src": "2416:55:3" + } + ] + } + } + ] + }, + "documentation": null, + "id": 507, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "likeVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 349, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "886:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 348, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "886:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 351, + "name": "_liked", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "903:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 350, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "903:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "885:30:3" + }, + "payable": false, + "returnParameters": { + "id": 353, + "nodeType": "ParameterList", + "parameters": [], + "src": "923:0:3" + }, + "scope": 608, + "src": "867:1621:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 518, + "nodeType": "Block", + "src": "2557:44:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 514, + "name": "_userLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 312, + "src": "2574:10:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 516, + "indexExpression": { + "argumentTypes": null, + "id": 515, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 509, + "src": "2585:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2574:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 513, + "id": 517, + "nodeType": "Return", + "src": "2567:27:3" + } + ] + }, + "documentation": null, + "id": 519, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userLikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 510, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 509, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 519, + "src": "2513:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 508, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2513:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2512:18:3" + }, + "payable": false, + "returnParameters": { + "id": 513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 512, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 519, + "src": "2551:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 511, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2551:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2550:6:3" + }, + "scope": 608, + "src": "2494:107:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 530, + "nodeType": "Block", + "src": "2795:47:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 526, + "name": "_userDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 316, + "src": "2812:13:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 528, + "indexExpression": { + "argumentTypes": null, + "id": 527, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "2826:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2812:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 525, + "id": 529, + "nodeType": "Return", + "src": "2805:30:3" + } + ] + }, + "documentation": "@dev returns total of dislikes registered by this user\n@param _address Address of the user", + "id": 531, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userDislikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 521, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "2750:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 520, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2750:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2749:18:3" + }, + "payable": false, + "returnParameters": { + "id": 525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 524, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "2788:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 523, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2788:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2787:6:3" + }, + "scope": 608, + "src": "2728:114:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 547, + "nodeType": "Block", + "src": "2909:72:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 538, + "name": "_vidLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 320, + "src": "2926:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 545, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 542, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 533, + "src": "2963:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 540, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2946:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2946:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2946:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 539, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2936:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2936:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2926:48:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 537, + "id": 546, + "nodeType": "Return", + "src": "2919:55:3" + } + ] + }, + "documentation": null, + "id": 548, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "vidLikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 533, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 548, + "src": "2866:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 532, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2866:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2865:17:3" + }, + "payable": false, + "returnParameters": { + "id": 537, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 536, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 548, + "src": "2903:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 535, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2903:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2902:6:3" + }, + "scope": 608, + "src": "2848:133:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 564, + "nodeType": "Block", + "src": "3051:75:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 555, + "name": "_vidDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "3068:12:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 562, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 559, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 550, + "src": "3108:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 557, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3091:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3091:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3091:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 556, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3081:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3081:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3068:51:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 554, + "id": 563, + "nodeType": "Return", + "src": "3061:58:3" + } + ] + }, + "documentation": null, + "id": 565, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "vidDislikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 551, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 550, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 565, + "src": "3008:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 549, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3008:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3007:17:3" + }, + "payable": false, + "returnParameters": { + "id": 554, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 553, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 565, + "src": "3045:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 552, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3045:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3044:6:3" + }, + "scope": 608, + "src": "2987:139:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 585, + "nodeType": "Block", + "src": "3217:79:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 574, + "name": "_likes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 302, + "src": "3234:6:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 576, + "indexExpression": { + "argumentTypes": null, + "id": 575, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 567, + "src": "3241:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3234:16:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 583, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 580, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 569, + "src": "3278:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 578, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3261:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3261:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3261:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 577, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3251:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3251:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3234:55:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 573, + "id": 584, + "nodeType": "Return", + "src": "3227:62:3" + } + ] + }, + "documentation": null, + "id": 586, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userLikesVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 567, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 586, + "src": "3156:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 566, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3156:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 569, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 586, + "src": "3174:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 568, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3174:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3155:35:3" + }, + "payable": false, + "returnParameters": { + "id": 573, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 572, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 586, + "src": "3211:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 571, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3211:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3210:6:3" + }, + "scope": 608, + "src": "3132:164:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 606, + "nodeType": "Block", + "src": "3390:82:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 595, + "name": "_dislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 308, + "src": "3407:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 597, + "indexExpression": { + "argumentTypes": null, + "id": 596, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 588, + "src": "3417:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3407:19:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 604, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 601, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 590, + "src": "3454:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 599, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3437:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 600, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3437:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3437:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 598, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3427:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3427:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3407:58:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 594, + "id": 605, + "nodeType": "Return", + "src": "3400:65:3" + } + ] + }, + "documentation": null, + "id": 607, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userDislikesVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 591, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 588, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 607, + "src": "3329:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3329:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 590, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 607, + "src": "3347:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 589, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3347:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3328:35:3" + }, + "payable": false, + "returnParameters": { + "id": 594, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 593, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 607, + "src": "3384:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 592, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3384:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3383:6:3" + }, + "scope": 608, + "src": "3302:170:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 609, + "src": "168:3306:3" + } + ], + "src": "0:3475:3" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Likes.sol", + "exportedSymbols": { + "Likes": [ + 608 + ] + }, + "id": 609, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 289, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:3" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 290, + "nodeType": "ImportDirective", + "scope": 609, + "sourceUnit": 2950, + "src": "26:59:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 291, + "nodeType": "ImportDirective", + "scope": 609, + "sourceUnit": 2894, + "src": "86:55:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 292, + "nodeType": "ImportDirective", + "scope": 609, + "sourceUnit": 1157, + "src": "142:24:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 293, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "186:7:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 294, + "nodeType": "InheritanceSpecifier", + "src": "186:7:3" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 608, + "linearizedBaseContracts": [ + 608, + 2949 + ], + "name": "Likes", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 296, + "name": "paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "201:23:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 295, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "201:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 302, + "name": "_likes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "291:60:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "typeName": { + "id": 301, + "keyType": { + "id": 297, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "300:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "291:45:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 300, + "keyType": { + "id": 298, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "319:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "310:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 299, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "330:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 308, + "name": "_dislikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "357:63:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "typeName": { + "id": 307, + "keyType": { + "id": 303, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "366:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "357:45:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 306, + "keyType": { + "id": 304, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "385:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "376:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 305, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "396:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 312, + "name": "_userLikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "458:44:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 311, + "keyType": { + "id": 309, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "467:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "458:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 310, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "478:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 316, + "name": "_userDislikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "508:47:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 315, + "keyType": { + "id": 313, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "517:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "508:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 314, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "528:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 320, + "name": "_vidLikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "561:43:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "typeName": { + "id": 319, + "keyType": { + "id": 317, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "570:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "561:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 318, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "581:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "constant": false, + "id": 324, + "name": "_vidDislikes", + "nodeType": "VariableDeclaration", + "scope": 608, + "src": "610:46:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "typeName": { + "id": 323, + "keyType": { + "id": 321, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "619:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "610:25:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 322, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "630:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 332, + "name": "LogLikeVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 331, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 326, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 332, + "src": "682:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 325, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "682:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 328, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 332, + "src": "700:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 327, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "700:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 330, + "indexed": false, + "name": "_liked", + "nodeType": "VariableDeclaration", + "scope": 332, + "src": "717:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 329, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "717:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "681:48:3" + }, + "src": "663:67:3" + }, + { + "body": { + "id": 346, + "nodeType": "Block", + "src": "782:79:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 337, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "792:5:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 338, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "800:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "800:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "792:18:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 341, + "nodeType": "ExpressionStatement", + "src": "792:18:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 342, + "name": "paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 296, + "src": "820:15:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 343, + "name": "_paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "838:16:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "820:34:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 345, + "nodeType": "ExpressionStatement", + "src": "820:34:3" + } + ] + }, + "documentation": null, + "id": 347, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 335, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 334, + "name": "_paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 347, + "src": "748:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 333, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "748:8:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "747:27:3" + }, + "payable": false, + "returnParameters": { + "id": 336, + "nodeType": "ParameterList", + "parameters": [], + "src": "782:0:3" + }, + "scope": 608, + "src": "736:125:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 506, + "nodeType": "Block", + "src": "923:1565:3", + "statements": [ + { + "assignments": [ + 355 + ], + "declarations": [ + { + "constant": false, + "id": 355, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "933:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 354, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "933:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 358, + "initialValue": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 356, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "952:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "952:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "933:29:3" + }, + { + "assignments": [ + 360 + ], + "declarations": [ + { + "constant": false, + "id": 360, + "name": "_videoHash", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "972:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 359, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "972:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 367, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 364, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1020:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 362, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1003:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1003:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1003:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 361, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "993:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "993:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "972:58:3" + }, + { + "assignments": [ + 369 + ], + "declarations": [ + { + "constant": false, + "id": 369, + "name": "_userLikesVideo", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "1040:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 368, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1040:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 374, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 371, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1078:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 372, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1088:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 370, + "name": "userLikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 586, + "src": "1063:14:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (address,string memory) view returns (bool)" + } + }, + "id": 373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1063:34:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1040:57:3" + }, + { + "assignments": [ + 376 + ], + "declarations": [ + { + "constant": false, + "id": 376, + "name": "_userDislikesVideo", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "1107:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 375, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1107:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 381, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 378, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1151:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 379, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1161:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 377, + "name": "userDislikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 607, + "src": "1133:17:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (address,string memory) view returns (bool)" + } + }, + "id": 380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1133:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1107:63:3" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 382, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1185:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "id": 383, + "name": "_userLikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "1195:15:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1185:25:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 387, + "nodeType": "IfStatement", + "src": "1181:118:3", + "trueBody": { + "id": 386, + "nodeType": "Block", + "src": "1212:87:3", + "statements": [ + { + "expression": null, + "functionReturnParameters": 353, + "id": 385, + "nodeType": "Return", + "src": "1282:7:3" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1313:7:3", + "subExpression": { + "argumentTypes": null, + "id": 388, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1314:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "id": 390, + "name": "_userDislikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 376, + "src": "1324:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1313:29:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 394, + "nodeType": "IfStatement", + "src": "1309:125:3", + "trueBody": { + "id": 393, + "nodeType": "Block", + "src": "1344:90:3", + "statements": [ + { + "expression": null, + "functionReturnParameters": 353, + "id": 392, + "nodeType": "Return", + "src": "1417:7:3" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "id": 395, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1448:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 446, + "nodeType": "IfStatement", + "src": "1444:481:3", + "trueBody": { + "id": 445, + "nodeType": "Block", + "src": "1456:469:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 396, + "name": "_likes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 302, + "src": "1537:6:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 399, + "indexExpression": { + "argumentTypes": null, + "id": 397, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1544:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1537:16:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 400, + "indexExpression": { + "argumentTypes": null, + "id": 398, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1554:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1537:28:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 401, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1568:4:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "1537:35:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 403, + "nodeType": "ExpressionStatement", + "src": "1537:35:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 404, + "name": "_userLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 312, + "src": "1586:10:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 406, + "indexExpression": { + "argumentTypes": null, + "id": 405, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1597:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1586:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1610:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1586:25:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 409, + "nodeType": "ExpressionStatement", + "src": "1586:25:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 410, + "name": "_vidLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 320, + "src": "1625:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 412, + "indexExpression": { + "argumentTypes": null, + "id": 411, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1635:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1625:21:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1650:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1625:26:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 415, + "nodeType": "ExpressionStatement", + "src": "1625:26:3" + }, + { + "condition": { + "argumentTypes": null, + "id": 416, + "name": "_userDislikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 376, + "src": "1670:18:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 438, + "nodeType": "IfStatement", + "src": "1666:189:3", + "trueBody": { + "id": 437, + "nodeType": "Block", + "src": "1690:165:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 417, + "name": "_dislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 308, + "src": "1708:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 420, + "indexExpression": { + "argumentTypes": null, + "id": 418, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1718:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1708:19:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 421, + "indexExpression": { + "argumentTypes": null, + "id": 419, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1728:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1708:31:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 422, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1742:5:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "1708:39:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 424, + "nodeType": "ExpressionStatement", + "src": "1708:39:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 425, + "name": "_userDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 316, + "src": "1765:13:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 427, + "indexExpression": { + "argumentTypes": null, + "id": 426, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1779:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1765:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1792:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1765:28:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 430, + "nodeType": "ExpressionStatement", + "src": "1765:28:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 431, + "name": "_vidDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "1811:12:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 433, + "indexExpression": { + "argumentTypes": null, + "id": 432, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "1824:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1811:24:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1839:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1811:29:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 436, + "nodeType": "ExpressionStatement", + "src": "1811:29:3" + } + ] + } + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 440, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "1887:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 441, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "1897:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 442, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1907:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 439, + "name": "LogLikeVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "1874:12:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,string memory,bool)" + } + }, + "id": 443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1874:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 444, + "nodeType": "EmitStatement", + "src": "1869:45:3" + } + ] + } + }, + { + "condition": { + "argumentTypes": null, + "id": 448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1939:7:3", + "subExpression": { + "argumentTypes": null, + "id": 447, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "1940:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 505, + "nodeType": "IfStatement", + "src": "1935:547:3", + "trueBody": { + "id": 504, + "nodeType": "Block", + "src": "1948:534:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 449, + "name": "_dislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 308, + "src": "2029:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 452, + "indexExpression": { + "argumentTypes": null, + "id": 450, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2039:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2029:19:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 453, + "indexExpression": { + "argumentTypes": null, + "id": 451, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2049:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2029:31:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2063:4:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "2029:38:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 456, + "nodeType": "ExpressionStatement", + "src": "2029:38:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 457, + "name": "_userDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 316, + "src": "2081:13:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 459, + "indexExpression": { + "argumentTypes": null, + "id": 458, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2095:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2081:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2108:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2081:28:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 462, + "nodeType": "ExpressionStatement", + "src": "2081:28:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 463, + "name": "_vidDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "2123:12:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 465, + "indexExpression": { + "argumentTypes": null, + "id": 464, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2136:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2123:24:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2151:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2123:29:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 468, + "nodeType": "ExpressionStatement", + "src": "2123:29:3" + }, + { + "condition": { + "argumentTypes": null, + "id": 469, + "name": "_userLikesVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "2171:15:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 491, + "nodeType": "IfStatement", + "src": "2167:177:3", + "trueBody": { + "id": 490, + "nodeType": "Block", + "src": "2188:156:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 470, + "name": "_likes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 302, + "src": "2206:6:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 473, + "indexExpression": { + "argumentTypes": null, + "id": 471, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2213:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2206:16:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 474, + "indexExpression": { + "argumentTypes": null, + "id": 472, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2223:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2206:28:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2237:5:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "2206:36:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 477, + "nodeType": "ExpressionStatement", + "src": "2206:36:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 478, + "name": "_userLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 312, + "src": "2260:10:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 480, + "indexExpression": { + "argumentTypes": null, + "id": 479, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2271:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2260:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2284:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2260:25:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 483, + "nodeType": "ExpressionStatement", + "src": "2260:25:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 484, + "name": "_vidLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 320, + "src": "2303:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 486, + "indexExpression": { + "argumentTypes": null, + "id": 485, + "name": "_videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 360, + "src": "2313:10:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2303:21:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "31", + "id": 487, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2328:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2303:26:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 489, + "nodeType": "ExpressionStatement", + "src": "2303:26:3" + } + ] + } + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 493, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2375:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 494, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "2385:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 495, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "2395:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 492, + "name": "LogLikeVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "2362:12:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,string memory,bool)" + } + }, + "id": 496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2362:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 497, + "nodeType": "EmitStatement", + "src": "2357:45:3" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 499, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 355, + "src": "2434:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "hexValue": "74686973207061737365642068657265", + "id": 500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2444:18:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", + "typeString": "literal_string \"this passed here\"" + }, + "value": "this passed here" + }, + { + "argumentTypes": null, + "id": 501, + "name": "_liked", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 351, + "src": "2464:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", + "typeString": "literal_string \"this passed here\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 498, + "name": "LogLikeVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 332, + "src": "2421:12:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,string memory,bool)" + } + }, + "id": 502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2421:50:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 503, + "nodeType": "EmitStatement", + "src": "2416:55:3" + } + ] + } + } + ] + }, + "documentation": null, + "id": 507, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "likeVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 349, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "886:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 348, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "886:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 351, + "name": "_liked", + "nodeType": "VariableDeclaration", + "scope": 507, + "src": "903:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 350, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "903:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "885:30:3" + }, + "payable": false, + "returnParameters": { + "id": 353, + "nodeType": "ParameterList", + "parameters": [], + "src": "923:0:3" + }, + "scope": 608, + "src": "867:1621:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 518, + "nodeType": "Block", + "src": "2557:44:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 514, + "name": "_userLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 312, + "src": "2574:10:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 516, + "indexExpression": { + "argumentTypes": null, + "id": 515, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 509, + "src": "2585:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2574:20:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 513, + "id": 517, + "nodeType": "Return", + "src": "2567:27:3" + } + ] + }, + "documentation": null, + "id": 519, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userLikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 510, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 509, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 519, + "src": "2513:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 508, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2513:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2512:18:3" + }, + "payable": false, + "returnParameters": { + "id": 513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 512, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 519, + "src": "2551:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 511, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2551:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2550:6:3" + }, + "scope": 608, + "src": "2494:107:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 530, + "nodeType": "Block", + "src": "2795:47:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 526, + "name": "_userDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 316, + "src": "2812:13:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 528, + "indexExpression": { + "argumentTypes": null, + "id": 527, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "2826:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2812:23:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 525, + "id": 529, + "nodeType": "Return", + "src": "2805:30:3" + } + ] + }, + "documentation": "@dev returns total of dislikes registered by this user\n@param _address Address of the user", + "id": 531, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userDislikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 521, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "2750:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 520, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2750:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2749:18:3" + }, + "payable": false, + "returnParameters": { + "id": 525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 524, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "2788:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 523, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2788:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2787:6:3" + }, + "scope": 608, + "src": "2728:114:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 547, + "nodeType": "Block", + "src": "2909:72:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 538, + "name": "_vidLikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 320, + "src": "2926:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 545, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 542, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 533, + "src": "2963:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 540, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2946:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2946:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2946:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 539, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2936:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2936:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2926:48:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 537, + "id": 546, + "nodeType": "Return", + "src": "2919:55:3" + } + ] + }, + "documentation": null, + "id": 548, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "vidLikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 533, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 548, + "src": "2866:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 532, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2866:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2865:17:3" + }, + "payable": false, + "returnParameters": { + "id": 537, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 536, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 548, + "src": "2903:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 535, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2903:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2902:6:3" + }, + "scope": 608, + "src": "2848:133:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 564, + "nodeType": "Block", + "src": "3051:75:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 555, + "name": "_vidDislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "3068:12:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 562, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 559, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 550, + "src": "3108:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 557, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3091:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3091:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3091:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 556, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3081:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3081:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3068:51:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 554, + "id": 563, + "nodeType": "Return", + "src": "3061:58:3" + } + ] + }, + "documentation": null, + "id": 565, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "vidDislikes", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 551, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 550, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 565, + "src": "3008:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 549, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3008:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3007:17:3" + }, + "payable": false, + "returnParameters": { + "id": 554, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 553, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 565, + "src": "3045:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 552, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3045:4:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3044:6:3" + }, + "scope": 608, + "src": "2987:139:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 585, + "nodeType": "Block", + "src": "3217:79:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 574, + "name": "_likes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 302, + "src": "3234:6:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 576, + "indexExpression": { + "argumentTypes": null, + "id": 575, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 567, + "src": "3241:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3234:16:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 583, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 580, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 569, + "src": "3278:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 578, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3261:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3261:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3261:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 577, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3251:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3251:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3234:55:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 573, + "id": 584, + "nodeType": "Return", + "src": "3227:62:3" + } + ] + }, + "documentation": null, + "id": 586, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userLikesVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 567, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 586, + "src": "3156:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 566, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3156:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 569, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 586, + "src": "3174:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 568, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3174:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3155:35:3" + }, + "payable": false, + "returnParameters": { + "id": 573, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 572, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 586, + "src": "3211:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 571, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3211:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3210:6:3" + }, + "scope": 608, + "src": "3132:164:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 606, + "nodeType": "Block", + "src": "3390:82:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 595, + "name": "_dislikes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 308, + "src": "3407:9:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(address => mapping(bytes32 => bool))" + } + }, + "id": 597, + "indexExpression": { + "argumentTypes": null, + "id": 596, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 588, + "src": "3417:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3407:19:3", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 604, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 601, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 590, + "src": "3454:8:3", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 599, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3437:3:3", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 600, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3437:16:3", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3437:26:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 598, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3427:9:3", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3427:37:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3407:58:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 594, + "id": 605, + "nodeType": "Return", + "src": "3400:65:3" + } + ] + }, + "documentation": null, + "id": 607, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userDislikesVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 591, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 588, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 607, + "src": "3329:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 587, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3329:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 590, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 607, + "src": "3347:15:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 589, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3347:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3328:35:3" + }, + "payable": false, + "returnParameters": { + "id": 594, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 593, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 607, + "src": "3384:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 592, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3384:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3383:6:3" + }, + "scope": 608, + "src": "3302:170:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 609, + "src": "168:3306:3" + } + ], + "src": "0:3475:3" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.051Z" +} \ No newline at end of file diff --git a/build/contracts/Migrations.json b/build/contracts/Migrations.json index bade9b1..6effade 100644 --- a/build/contracts/Migrations.json +++ b/build/contracts/Migrations.json @@ -1 +1,1380 @@ -{"contractName":"Migrations","abi":[{"constant":true,"inputs":[],"name":"last_completed_migration","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":false,"inputs":[{"name":"completed","type":"uint256"}],"name":"setCompleted","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"new_address","type":"address"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102f8806100606000396000f300608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b506100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b506101576004803603810190808035906020019092919050505061026c565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561022457600080fd5b505af1158015610238573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600a165627a7a72305820c78536e19a06aafa077dfd2c6c9ce2d435b5dc19ffab1c981f813a3f3029b0870029"} \ No newline at end of file +{ + "contractName": "Migrations", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "last_completed_migration", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "constant": false, + "inputs": [ + { + "name": "completed", + "type": "uint256" + } + ], + "name": "setCompleted", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "new_address", + "type": "address" + } + ], + "name": "upgrade", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506102f8806100606000396000f300608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b506100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b506101576004803603810190808035906020019092919050505061026c565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561022457600080fd5b505af1158015610238573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600a165627a7a723058208822439b6466b5ae13e1cda88441c47d6bb27b02eb155d1cf0f91765271bf5080029", + "deployedBytecode": "0x608060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630900f01014610067578063445df0ac146100aa5780638da5cb5b146100d5578063fdacd5761461012c575b600080fd5b34801561007357600080fd5b506100a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610159565b005b3480156100b657600080fd5b506100bf610241565b6040518082815260200191505060405180910390f35b3480156100e157600080fd5b506100ea610247565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561013857600080fd5b506101576004803603810190808035906020019092919050505061026c565b005b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561023d578190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b15801561022457600080fd5b505af1158015610238573d6000803e3d6000fd5b505050505b5050565b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102c957806001819055505b505600a165627a7a723058208822439b6466b5ae13e1cda88441c47d6bb27b02eb155d1cf0f91765271bf5080029", + "sourceMap": "24:519:0:-;;;190:56;8:9:-1;5:2;;;30:1;27;20:12;5:2;190:56:0;229:10;221:5;;:18;;;;;;;;;;;;;;;;;;24:519;;;;;;", + "deployedSourceMap": "24:519:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;367:174;;8:9:-1;5:2;;;30:1;27;20:12;5:2;367:174:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;76:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;76:36:0;;;;;;;;;;;;;;;;;;;;;;;50:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;50:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;252:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;252:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;367:174;432:19;169:5;;;;;;;;;;;155:19;;:10;:19;;;151:26;;;465:11;432:45;;487:8;:21;;;509:24;;487:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;487:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;487:47:0;;;;151:26;367:174;;:::o;76:36::-;;;;:::o;50:20::-;;;;;;;;;;;;;:::o;252:109::-;169:5;;;;;;;;;;;155:19;;:10;:19;;;151:26;;;345:9;318:24;:36;;;;151:26;252:109;:::o", + "source": "pragma solidity ^0.4.0;\ncontract Migrations {\n address public owner;\n uint public last_completed_migration;\n\n modifier restricted() {\n if (msg.sender == owner) _;\n }\n\n constructor() public {\n owner = msg.sender;\n }\n\n function setCompleted(uint completed) public restricted {\n last_completed_migration = completed;\n }\n\n function upgrade(address new_address) public restricted{\n Migrations upgraded = Migrations(new_address);\n upgraded.setCompleted(last_completed_migration);\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/Migrations.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 56 + ] + }, + "id": 57, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.4", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "0:23:0" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 56, + "linearizedBaseContracts": [ + 56 + ], + "name": "Migrations", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 56, + "src": "50:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "last_completed_migration", + "nodeType": "VariableDeclaration", + "scope": 56, + "src": "76:36:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "76:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 13, + "nodeType": "Block", + "src": "141:43:0", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "155:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "155:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 9, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3, + "src": "169:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "155:19:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 12, + "nodeType": "IfStatement", + "src": "151:26:0", + "trueBody": { + "id": 11, + "nodeType": "PlaceholderStatement", + "src": "176:1:0" + } + } + ] + }, + "documentation": null, + "id": 14, + "name": "restricted", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 6, + "nodeType": "ParameterList", + "parameters": [], + "src": "138:2:0" + }, + "src": "119:65:0", + "visibility": "internal" + }, + { + "body": { + "id": 22, + "nodeType": "Block", + "src": "211:35:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 20, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 17, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3, + "src": "221:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 18, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "229:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 19, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "229:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "221:18:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 21, + "nodeType": "ExpressionStatement", + "src": "221:18:0" + } + ] + }, + "documentation": null, + "id": 23, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15, + "nodeType": "ParameterList", + "parameters": [], + "src": "201:2:0" + }, + "payable": false, + "returnParameters": { + "id": 16, + "nodeType": "ParameterList", + "parameters": [], + "src": "211:0:0" + }, + "scope": 56, + "src": "190:56:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 34, + "nodeType": "Block", + "src": "308:53:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 32, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 30, + "name": "last_completed_migration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "318:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 31, + "name": "completed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25, + "src": "345:9:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "318:36:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 33, + "nodeType": "ExpressionStatement", + "src": "318:36:0" + } + ] + }, + "documentation": null, + "id": 35, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 28, + "modifierName": { + "argumentTypes": null, + "id": 27, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "297:10:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "297:10:0" + } + ], + "name": "setCompleted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25, + "name": "completed", + "nodeType": "VariableDeclaration", + "scope": 35, + "src": "274:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "274:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "273:16:0" + }, + "payable": false, + "returnParameters": { + "id": 29, + "nodeType": "ParameterList", + "parameters": [], + "src": "308:0:0" + }, + "scope": 56, + "src": "252:109:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 54, + "nodeType": "Block", + "src": "422:119:0", + "statements": [ + { + "assignments": [ + 43 + ], + "declarations": [ + { + "constant": false, + "id": 43, + "name": "upgraded", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "432:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + }, + "typeName": { + "contractScope": null, + "id": 42, + "name": "Migrations", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 56, + "src": "432:10:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 47, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 45, + "name": "new_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "465:11:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 44, + "name": "Migrations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 56, + "src": "454:10:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Migrations_$56_$", + "typeString": "type(contract Migrations)" + } + }, + "id": 46, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "454:23:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "432:45:0" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 51, + "name": "last_completed_migration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "509:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 48, + "name": "upgraded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 43, + "src": "487:8:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + } + }, + "id": 50, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setCompleted", + "nodeType": "MemberAccess", + "referencedDeclaration": 35, + "src": "487:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 52, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "487:47:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 53, + "nodeType": "ExpressionStatement", + "src": "487:47:0" + } + ] + }, + "documentation": null, + "id": 55, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 40, + "modifierName": { + "argumentTypes": null, + "id": 39, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "412:10:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "412:10:0" + } + ], + "name": "upgrade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 38, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 37, + "name": "new_address", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "384:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 36, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "384:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "383:21:0" + }, + "payable": false, + "returnParameters": { + "id": 41, + "nodeType": "ParameterList", + "parameters": [], + "src": "422:0:0" + }, + "scope": 56, + "src": "367:174:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 57, + "src": "24:519:0" + } + ], + "src": "0:544:0" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 56 + ] + }, + "id": 57, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.4", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "0:23:0" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 56, + "linearizedBaseContracts": [ + 56 + ], + "name": "Migrations", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 56, + "src": "50:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "last_completed_migration", + "nodeType": "VariableDeclaration", + "scope": 56, + "src": "76:36:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "76:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 13, + "nodeType": "Block", + "src": "141:43:0", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 10, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 7, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "155:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "155:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 9, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3, + "src": "169:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "155:19:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 12, + "nodeType": "IfStatement", + "src": "151:26:0", + "trueBody": { + "id": 11, + "nodeType": "PlaceholderStatement", + "src": "176:1:0" + } + } + ] + }, + "documentation": null, + "id": 14, + "name": "restricted", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 6, + "nodeType": "ParameterList", + "parameters": [], + "src": "138:2:0" + }, + "src": "119:65:0", + "visibility": "internal" + }, + { + "body": { + "id": 22, + "nodeType": "Block", + "src": "211:35:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 20, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 17, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3, + "src": "221:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 18, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "229:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 19, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "229:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "221:18:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 21, + "nodeType": "ExpressionStatement", + "src": "221:18:0" + } + ] + }, + "documentation": null, + "id": 23, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 15, + "nodeType": "ParameterList", + "parameters": [], + "src": "201:2:0" + }, + "payable": false, + "returnParameters": { + "id": 16, + "nodeType": "ParameterList", + "parameters": [], + "src": "211:0:0" + }, + "scope": 56, + "src": "190:56:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 34, + "nodeType": "Block", + "src": "308:53:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 32, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 30, + "name": "last_completed_migration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "318:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 31, + "name": "completed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 25, + "src": "345:9:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "318:36:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 33, + "nodeType": "ExpressionStatement", + "src": "318:36:0" + } + ] + }, + "documentation": null, + "id": 35, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 28, + "modifierName": { + "argumentTypes": null, + "id": 27, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "297:10:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "297:10:0" + } + ], + "name": "setCompleted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25, + "name": "completed", + "nodeType": "VariableDeclaration", + "scope": 35, + "src": "274:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 24, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "274:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "273:16:0" + }, + "payable": false, + "returnParameters": { + "id": 29, + "nodeType": "ParameterList", + "parameters": [], + "src": "308:0:0" + }, + "scope": 56, + "src": "252:109:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 54, + "nodeType": "Block", + "src": "422:119:0", + "statements": [ + { + "assignments": [ + 43 + ], + "declarations": [ + { + "constant": false, + "id": 43, + "name": "upgraded", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "432:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + }, + "typeName": { + "contractScope": null, + "id": 42, + "name": "Migrations", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 56, + "src": "432:10:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 47, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 45, + "name": "new_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "465:11:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 44, + "name": "Migrations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 56, + "src": "454:10:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Migrations_$56_$", + "typeString": "type(contract Migrations)" + } + }, + "id": 46, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "454:23:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "432:45:0" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 51, + "name": "last_completed_migration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "509:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 48, + "name": "upgraded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 43, + "src": "487:8:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$56", + "typeString": "contract Migrations" + } + }, + "id": 50, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setCompleted", + "nodeType": "MemberAccess", + "referencedDeclaration": 35, + "src": "487:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 52, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "487:47:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 53, + "nodeType": "ExpressionStatement", + "src": "487:47:0" + } + ] + }, + "documentation": null, + "id": 55, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 40, + "modifierName": { + "argumentTypes": null, + "id": 39, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "412:10:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "412:10:0" + } + ], + "name": "upgrade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 38, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 37, + "name": "new_address", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "384:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 36, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "384:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "383:21:0" + }, + "payable": false, + "returnParameters": { + "id": 41, + "nodeType": "ParameterList", + "parameters": [], + "src": "422:0:0" + }, + "scope": 56, + "src": "367:174:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 57, + "src": "24:519:0" + } + ], + "src": "0:544:0" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.040Z" +} \ No newline at end of file diff --git a/build/contracts/Ownable.json b/build/contracts/Ownable.json index 70322ca..07d7cfa 100644 --- a/build/contracts/Ownable.json +++ b/build/contracts/Ownable.json @@ -1 +1,1459 @@ -{"contractName":"Ownable","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610291806100606000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a8575b600080fd5b34801561005d57600080fd5b506100666100eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100b457600080fd5b506100e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610110565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561016b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156101a757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582090067046b17c22d1a16753fc182d09aa7040b1bbf9f0351a6b401b86754a48dc0029"} \ No newline at end of file +{ + "contractName": "Ownable", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "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" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610291806100606000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a8575b600080fd5b34801561005d57600080fd5b506100666100eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100b457600080fd5b506100e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610110565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561016b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156101a757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582090067046b17c22d1a16753fc182d09aa7040b1bbf9f0351a6b401b86754a48dc0029", + "deployedBytecode": "0x60806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680638da5cb5b14610051578063f2fde38b146100a8575b600080fd5b34801561005d57600080fd5b506100666100eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100b457600080fd5b506100e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610110565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561016b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156101a757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582090067046b17c22d1a16753fc182d09aa7040b1bbf9f0351a6b401b86754a48dc0029", + "sourceMap": "217:782:16:-;;;469:48;8:9:-1;5:2;;;30:1;27;20:12;5:2;469:48:16;502:10;494:5;;:18;;;;;;;;;;;;;;;;;;217:782;;;;;;", + "deployedSourceMap": "217:782:16:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;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": { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 2949 + ] + }, + "id": 2950, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2895, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:16" + }, + { + "baseContracts": [], + "contractDependencies": [], + "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, + "id": 2949, + "linearizedBaseContracts": [ + 2949 + ], + "name": "Ownable", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 2897, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 2949, + "src": "238:20:16", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2896, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "238:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 2903, + "name": "OwnershipTransferred", + "nodeType": "EventDefinition", + "parameters": { + "id": 2902, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2899, + "indexed": true, + "name": "previousOwner", + "nodeType": "VariableDeclaration", + "scope": 2903, + "src": "291:29:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2898, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "291:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2901, + "indexed": true, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 2903, + "src": "322:24:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "322:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "290:57:16" + }, + "src": "264:84:16" + }, + { + "body": { + "id": 2911, + "nodeType": "Block", + "src": "488:29:16", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2906, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "494:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2907, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "502:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "502:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "494:18:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2910, + "nodeType": "ExpressionStatement", + "src": "494:18:16" + } + ] + }, + "documentation": "@dev The Ownable constructor sets the original `owner` of the contract to the sender\naccount.", + "id": 2912, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "Ownable", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2904, + "nodeType": "ParameterList", + "parameters": [], + "src": "485:2:16" + }, + "payable": false, + "returnParameters": { + "id": 2905, + "nodeType": "ParameterList", + "parameters": [], + "src": "488:0:16" + }, + "scope": 2949, + "src": "469:48:16", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2922, + "nodeType": "Block", + "src": "619:46:16", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2915, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "633:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "633:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2917, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "647:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "633:19:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2914, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "625:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "625:28:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2920, + "nodeType": "ExpressionStatement", + "src": "625:28:16" + }, + { + "id": 2921, + "nodeType": "PlaceholderStatement", + "src": "659:1:16" + } + ] + }, + "documentation": "@dev Throws if called by any account other than the owner.", + "id": 2923, + "name": "onlyOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2913, + "nodeType": "ParameterList", + "parameters": [], + "src": "616:2:16" + }, + "src": "598:67:16", + "visibility": "internal" + }, + { + "body": { + "id": 2947, + "nodeType": "Block", + "src": "889:107:16", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2931, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2925, + "src": "903:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "923:1:16", + "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": 2932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "915:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "915:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "903:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2930, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "895:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "895:31:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2937, + "nodeType": "ExpressionStatement", + "src": "895:31:16" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2939, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "953:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2940, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2925, + "src": "960:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2938, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2903, + "src": "932:20:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 2941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "932:37:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2942, + "nodeType": "ExpressionStatement", + "src": "932:37:16" + }, + { + "expression": { + "argumentTypes": null, + "id": 2945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2943, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "975:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2944, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2925, + "src": "983:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "975:16:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2946, + "nodeType": "ExpressionStatement", + "src": "975:16:16" + } + ] + }, + "documentation": "@dev Allows the current owner to transfer control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", + "id": 2948, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2928, + "modifierName": { + "argumentTypes": null, + "id": 2927, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "872:9:16", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "872:9:16" + } + ], + "name": "transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2925, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 2948, + "src": "854:16:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "854:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "853:18:16" + }, + "payable": false, + "returnParameters": { + "id": 2929, + "nodeType": "ParameterList", + "parameters": [], + "src": "889:0:16" + }, + "scope": 2949, + "src": "827:169:16", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2950, + "src": "217:782:16" + } + ], + "src": "0:1000:16" + }, + "legacyAST": { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 2949 + ] + }, + "id": 2950, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2895, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:16" + }, + { + "baseContracts": [], + "contractDependencies": [], + "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, + "id": 2949, + "linearizedBaseContracts": [ + 2949 + ], + "name": "Ownable", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 2897, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 2949, + "src": "238:20:16", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2896, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "238:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 2903, + "name": "OwnershipTransferred", + "nodeType": "EventDefinition", + "parameters": { + "id": 2902, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2899, + "indexed": true, + "name": "previousOwner", + "nodeType": "VariableDeclaration", + "scope": 2903, + "src": "291:29:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2898, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "291:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2901, + "indexed": true, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 2903, + "src": "322:24:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "322:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "290:57:16" + }, + "src": "264:84:16" + }, + { + "body": { + "id": 2911, + "nodeType": "Block", + "src": "488:29:16", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2906, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "494:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2907, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "502:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "502:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "494:18:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2910, + "nodeType": "ExpressionStatement", + "src": "494:18:16" + } + ] + }, + "documentation": "@dev The Ownable constructor sets the original `owner` of the contract to the sender\naccount.", + "id": 2912, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "Ownable", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2904, + "nodeType": "ParameterList", + "parameters": [], + "src": "485:2:16" + }, + "payable": false, + "returnParameters": { + "id": 2905, + "nodeType": "ParameterList", + "parameters": [], + "src": "488:0:16" + }, + "scope": 2949, + "src": "469:48:16", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2922, + "nodeType": "Block", + "src": "619:46:16", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2915, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "633:3:16", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "633:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2917, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "647:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "633:19:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2914, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "625:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "625:28:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2920, + "nodeType": "ExpressionStatement", + "src": "625:28:16" + }, + { + "id": 2921, + "nodeType": "PlaceholderStatement", + "src": "659:1:16" + } + ] + }, + "documentation": "@dev Throws if called by any account other than the owner.", + "id": 2923, + "name": "onlyOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2913, + "nodeType": "ParameterList", + "parameters": [], + "src": "616:2:16" + }, + "src": "598:67:16", + "visibility": "internal" + }, + { + "body": { + "id": 2947, + "nodeType": "Block", + "src": "889:107:16", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2931, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2925, + "src": "903:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2933, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "923:1:16", + "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": 2932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "915:7:16", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "915:10:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "903:22:16", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2930, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "895:7:16", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "895:31:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2937, + "nodeType": "ExpressionStatement", + "src": "895:31:16" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2939, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "953:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2940, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2925, + "src": "960:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2938, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2903, + "src": "932:20:16", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 2941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "932:37:16", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2942, + "nodeType": "ExpressionStatement", + "src": "932:37:16" + }, + { + "expression": { + "argumentTypes": null, + "id": 2945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2943, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "975:5:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2944, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2925, + "src": "983:8:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "975:16:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2946, + "nodeType": "ExpressionStatement", + "src": "975:16:16" + } + ] + }, + "documentation": "@dev Allows the current owner to transfer control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", + "id": 2948, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2928, + "modifierName": { + "argumentTypes": null, + "id": 2927, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "872:9:16", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "872:9:16" + } + ], + "name": "transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2925, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 2948, + "src": "854:16:16", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "854:7:16", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "853:18:16" + }, + "payable": false, + "returnParameters": { + "id": 2929, + "nodeType": "ParameterList", + "parameters": [], + "src": "889:0:16" + }, + "scope": 2949, + "src": "827:169:16", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2950, + "src": "217:782:16" + } + ], + "src": "0:1000:16" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.043Z" +} \ No newline at end of file diff --git a/build/contracts/PTIDistributor.json b/build/contracts/PTIDistributor.json index e854721..75e6299 100644 --- a/build/contracts/PTIDistributor.json +++ b/build/contracts/PTIDistributor.json @@ -1 +1,7380 @@ -{"contractName":"PTIDistributor","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"isUsed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistribute","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_toAddress","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_reason","type":"string"}],"name":"LogDistributeTransferable","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashing","type":"bytes32"}],"name":"LogDebug","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_owner","type":"address"}],"name":"LogDebugOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"distribute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwnerPacked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_hash","type":"bytes32"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"name":"checkOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_salt","type":"bytes32"},{"name":"_reason","type":"string"}],"name":"checkHashing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061144083398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061133c806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b41565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610cb5565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610fef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119b565b005b34801561045f57600080fd5b5061048260048036038101908080356000191690602001909291905050506112f0565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057f578051825260208201915060208101905060208303925061055a565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156105eb57805182526020820191506020810190506020830392506105c6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040516020018083805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561070457805182526020820191506020810190506020830392506106df565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561083557506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610813573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561084057600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561093657600080fd5b505af115801561094a573d6000803e3d6000fd5b505050506040513d602081101561096057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a1657600080fd5b505af1158015610a2a573d6000803e3d6000fd5b505050506040513d6020811015610a4057600080fd5b81019080805190602001909291905050501515610a5c57600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af8578082015181840152602081019050610add565b50505050905090810190601f168015610b255780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610bd45780518252602082019150602081019050602083039250610baf565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610c405780518252602082019150602081019050602083039250610c1b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610d4c5780518252602082019150602081019050602083039250610d27565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610db85780518252602082019150602081019050602083039250610d93565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040516020018083805190602001908083835b602083101515610e595780518252602082019150602081019050602083039250610e34565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610ed15780518252602082019150602081019050602083039250610eac565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610f98573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040516020018083805190602001908083835b6020831015156110675780518252602082019150602081019050602083039250611042565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b6020831015156110df57805182526020820191506020810190506020830392506110ba565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015611185573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561123257600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a72305820fda721176d601968febf2e35c25b42101aae049c25d911c11d5d0195176375590029"} \ No newline at end of file +{ + "contractName": "PTIDistributor", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "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" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "name": "isUsed", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "_registry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_toAddress", + "type": "address" + }, + { + "indexed": false, + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "name": "_reason", + "type": "string" + } + ], + "name": "LogDistribute", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_toAddress", + "type": "address" + }, + { + "indexed": false, + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "name": "_reason", + "type": "string" + } + ], + "name": "LogDistributeTransferable", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_hashing", + "type": "bytes32" + } + ], + "name": "LogDebug", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_owner", + "type": "address" + } + ], + "name": "LogDebugOwner", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_toAddress", + "type": "address" + }, + { + "name": "_amount", + "type": "uint256" + }, + { + "name": "_salt", + "type": "bytes32" + }, + { + "name": "_reason", + "type": "string" + }, + { + "name": "_v", + "type": "uint8" + }, + { + "name": "_r", + "type": "bytes32" + }, + { + "name": "_s", + "type": "bytes32" + } + ], + "name": "distribute", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_toAddress", + "type": "address" + }, + { + "name": "_amount", + "type": "uint256" + }, + { + "name": "_salt", + "type": "bytes32" + }, + { + "name": "_reason", + "type": "string" + }, + { + "name": "_v", + "type": "uint8" + }, + { + "name": "_r", + "type": "bytes32" + }, + { + "name": "_s", + "type": "bytes32" + } + ], + "name": "checkOwnerPacked", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_hash", + "type": "bytes32" + }, + { + "name": "_v", + "type": "uint8" + }, + { + "name": "_r", + "type": "bytes32" + }, + { + "name": "_s", + "type": "bytes32" + } + ], + "name": "checkOwner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_toAddress", + "type": "address" + }, + { + "name": "_amount", + "type": "uint256" + }, + { + "name": "_salt", + "type": "bytes32" + }, + { + "name": "_reason", + "type": "string" + } + ], + "name": "checkHashing", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405160208061144083398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061133c806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b41565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610cb5565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610fef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119b565b005b34801561045f57600080fd5b5061048260048036038101908080356000191690602001909291905050506112f0565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057f578051825260208201915060208101905060208303925061055a565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156105eb57805182526020820191506020810190506020830392506105c6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040516020018083805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561070457805182526020820191506020810190506020830392506106df565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561083557506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610813573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561084057600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561093657600080fd5b505af115801561094a573d6000803e3d6000fd5b505050506040513d602081101561096057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a1657600080fd5b505af1158015610a2a573d6000803e3d6000fd5b505050506040513d6020811015610a4057600080fd5b81019080805190602001909291905050501515610a5c57600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af8578082015181840152602081019050610add565b50505050905090810190601f168015610b255780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610bd45780518252602082019150602081019050602083039250610baf565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610c405780518252602082019150602081019050602083039250610c1b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610d4c5780518252602082019150602081019050602083039250610d27565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610db85780518252602082019150602081019050602083039250610d93565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040516020018083805190602001908083835b602083101515610e595780518252602082019150602081019050602083039250610e34565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610ed15780518252602082019150602081019050602083039250610eac565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610f98573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040516020018083805190602001908083835b6020831015156110675780518252602082019150602081019050602083039250611042565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b6020831015156110df57805182526020820191506020810190506020830392506110ba565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015611185573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561123257600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a72305820a2247a6bcb0007e215193e2e78f0956207e2af805652cf0ff201d62258d0d9980029", + "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680637b103999146100935780638da5cb5b146100ea578063a88a8e3214610141578063a9eb363c1461020b578063b46246db146102ac578063d882044314610376578063f2fde38b14610410578063fe255a1814610453575b600080fd5b34801561009f57600080fd5b506100a861049c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100f657600080fd5b506100ff6104c2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561014d57600080fd5b50610209600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506104e7565b005b34801561021757600080fd5b506102aa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b41565b005b3480156102b857600080fd5b50610374600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610cb5565b005b34801561038257600080fd5b506103ce6004803603810190808035600019169060200190929190803560ff16906020019092919080356000191690602001909291908035600019169060200190929190505050610fef565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119b565b005b34801561045f57600080fd5b5061048260048036038101908080356000191690602001909291905050506112f0565b604051808215151515815260200191505060405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060606000808a8a8a8a604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b60208310151561057f578051825260208201915060208101905060208303925061055a565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156105eb57805182526020820191506020810190506020830392506105c6565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250925082846040516020018083805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561070457805182526020820191506020810190506020830392506106df565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209150600260008a6000191660001916815260200190815260200160002060009054906101000a900460ff1615801561083557506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600183898989604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610813573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16145b151561084057600080fd5b6001600260008b6000191660001916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561093657600080fd5b505af115801561094a573d6000803e3d6000fd5b505050506040513d602081101561096057600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8c8c6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a1657600080fd5b505af1158015610a2a573d6000803e3d6000fd5b505050506040513d6020811015610a4057600080fd5b81019080805190602001909291905050501515610a5c57600080fd5b7f47c36377eacf5c9bf0b0bffe0f11388976bba76b10c4a87c59a7d6847497205b8b8b8a604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af8578082015181840152602081019050610add565b50505050905090810190601f168015610b255780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050505050565b600084848484604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610bd45780518252602082019150602081019050602083039250610baf565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610c405780518252602082019150602081019050602083039250610c1b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507f05e46912c9be87d8a6830598db8544b61884d9d22f3921597a9a6e8a340914b38160405180826000191660001916815260200191505060405180910390a15050505050565b60006060600089898989604051602001808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401848152602001836000191660001916815260200182805190602001908083835b602083101515610d4c5780518252602082019150602081019050602083039250610d27565b6001836020036101000a0380198251168184511680821785525050505050509050019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610db85780518252602082019150602081019050602083039250610d93565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902092506040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081836040516020018083805190602001908083835b602083101515610e595780518252602082019150602081019050602083039250610e34565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610ed15780518252602082019150602081019050602083039250610eac565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090507ff9af0632ddaf7a690a6486635894cfe799c6b72244b459660893f9f7b95771e8600182888888604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610f98573d6000803e3d6000fd5b50505060206040510351604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150505050505050505050565b6000606060006040805190810160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250915081876040516020018083805190602001908083835b6020831015156110675780518252602082019150602081019050602083039250611042565b6001836020036101000a0380198251168184511680821785525050505050509050018260001916600019168152602001925050506040516020818303038152906040526040518082805190602001908083835b6020831015156110df57805182526020820191506020810190506020830392506110ba565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050600181878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015611185573d6000803e3d6000fd5b5050506020604051035192505050949350505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561123257600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff16815600a165627a7a72305820a2247a6bcb0007e215193e2e78f0956207e2af805652cf0ff201d62258d0d9980029", + "sourceMap": "141:2350:4:-;;;501:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;501:104:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;558:10:4;550:5;;:18;;;;;;;;;;;;;;;;;;589:9;578:8;;:20;;;;;;;;;;;;;;;;;;501:104;141:2350;;;;;;", + "deployedSourceMap": "141:2350:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;183:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;183:24:4;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;611:764:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;611:764:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2248:241;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2248:241:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1381:526;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1381:526:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1913:329;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1913:329:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;456:38:4;;8:9:-1;5:2;;;30:1;27;20:12;5:2;456:38:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;183:24;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;611:764:4:-;839:15;931:19;997:20;1185:18;884:10;896:7;905:5;912:7;867:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;867:53:4;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;867:53:4;;;857:64;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;857:64:4;;;;;;;;;;;;;;;;839:82;;931:56;;;;;;;;;;;;;;;;;;;;1047:6;1055:7;1030:33;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1030:33:4;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1030:33:4;;;1020:44;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1020:44:4;;;;;;;;;;;;;;;;997:67;;1083:6;:13;1090:5;1083:13;;;;;;;;;;;;;;;;;;;;;;;;;;;1082:14;:62;;;;;1139:5;;;;;;;;;;;1100:44;;:35;1110:12;1124:2;1128;1132;1100:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1100:35:4;;;;;;;;:44;;;1082:62;1074:71;;;;;;;;1171:4;1155:6;:13;1162:5;1155:13;;;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;1219:8;;;;;;;;;;;:20;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1219:36:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1219:36:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1219:36:4;;;;;;;;;;;;;;;;1185:71;;1274:5;:14;;;1289:10;1301:7;1274:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1274:35:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1274:35:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1274:35:4;;;;;;;;;;;;;;;;1266:44;;;;;;;;1325:43;1339:10;1351:7;1360;1325:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1325:43:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;611:764;;;;;;;;;;;:::o;2248:241::-;2368:15;2413:10;2425:7;2434:5;2441:7;2396:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2396:53:4;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2396:53:4;;;2386:64;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2386:64:4;;;;;;;;;;;;;;;;2368:82;;2465:17;2474:7;2465:17;;;;;;;;;;;;;;;;;;;;;;;;2248:241;;;;;:::o;1381:526::-;1610:15;1702:19;1768:20;1655:10;1667:7;1676:5;1683:7;1638:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1638:53:4;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1638:53:4;;;1628:64;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1628:64:4;;;;;;;;;;;;;;;;1610:82;;1702:56;;;;;;;;;;;;;;;;;;;;1818:6;1826:7;1801:33;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1801:33:4;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1801:33:4;;;1791:44;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1791:44:4;;;;;;;;;;;;;;;;1768:67;;1850:50;1864:35;1874:12;1888:2;1892;1896;1864:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1864:35:4;;;;;;;;1850:50;;;;;;;;;;;;;;;;;;;;;;1381:526;;;;;;;;;;:::o;1913:329::-;2028:7;2052:19;2118:20;2052:56;;;;;;;;;;;;;;;;;;;;2168:6;2176:5;2151:31;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2151:31:4;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2151:31:4;;;2141:42;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2141:42:4;;;;;;;;;;;;;;;;2118:65;;2200:35;2210:12;2224:2;2228;2232;2200:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2200:35:4;;;;;;;;2193:42;;1913:329;;;;;;;;:::o;827:169:16:-;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;456:38:4:-;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\n\ncontract PTIDistributor is Ownable {\n\n Registry public registry;\n\n event LogDistribute(address _toAddress, uint _amount, string _reason);\n event LogDistributeTransferable(address _toAddress, uint _amount, string _reason);\n event LogDebug(bytes32 _hashing);\n event LogDebugOwner(address _owner);\n\n mapping(bytes32 => bool) public isUsed;\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n function distribute(\n address _toAddress, \n uint256 _amount, \n bytes32 _salt, \n string _reason, \n uint8 _v, \n bytes32 _r, \n bytes32 _s\n ) \n public \n {\n bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason));\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, message));\n require(!isUsed[_salt] && ecrecover(prefixedHash, _v, _r, _s) == owner);\n isUsed[_salt] = true;\n ParatiiToken token = ParatiiToken(registry.getContract(\"ParatiiToken\"));\n require(token.transfer(_toAddress, _amount));\n emit LogDistribute(_toAddress, _amount, _reason);\n }\n\n function checkOwnerPacked(\n address _toAddress, \n uint256 _amount, \n bytes32 _salt, \n string _reason, \n uint8 _v, \n bytes32 _r, \n bytes32 _s \n )\n public\n {\n bytes32 message = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason));\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, message));\n emit LogDebugOwner(ecrecover(prefixedHash, _v, _r, _s));\n }\n\n function checkOwner(bytes32 _hash, uint8 _v, bytes32 _r, bytes32 _s) \n public\n pure\n returns (address) \n {\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, _hash));\n return ecrecover(prefixedHash, _v, _r, _s);\n }\n\n function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) \n public\n {\n bytes32 hashing = keccak256(abi.encodePacked(_toAddress, _amount, _salt, _reason));\n emit LogDebug(hashing);\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/PTIDistributor.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/PTIDistributor.sol", + "exportedSymbols": { + "PTIDistributor": [ + 866 + ] + }, + "id": 867, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 610, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:4" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 611, + "nodeType": "ImportDirective", + "scope": 867, + "sourceUnit": 2950, + "src": "26:59:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 612, + "nodeType": "ImportDirective", + "scope": 867, + "sourceUnit": 905, + "src": "86:28:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 613, + "nodeType": "ImportDirective", + "scope": 867, + "sourceUnit": 1157, + "src": "115:24:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 614, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "168:7:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 615, + "nodeType": "InheritanceSpecifier", + "src": "168:7:4" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 866, + "linearizedBaseContracts": [ + 866, + 2949 + ], + "name": "PTIDistributor", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 617, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 866, + "src": "183:24:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 616, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "183:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 625, + "name": "LogDistribute", + "nodeType": "EventDefinition", + "parameters": { + "id": 624, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 619, + "indexed": false, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 625, + "src": "234:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "234:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 621, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 625, + "src": "254:12:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 620, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "254:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 623, + "indexed": false, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 625, + "src": "268:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 622, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "268:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "233:50:4" + }, + "src": "214:70:4" + }, + { + "anonymous": false, + "documentation": null, + "id": 633, + "name": "LogDistributeTransferable", + "nodeType": "EventDefinition", + "parameters": { + "id": 632, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 627, + "indexed": false, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 633, + "src": "321:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 626, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "321:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 629, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 633, + "src": "341:12:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 628, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "341:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 631, + "indexed": false, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 633, + "src": "355:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 630, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "355:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "320:50:4" + }, + "src": "289:82:4" + }, + { + "anonymous": false, + "documentation": null, + "id": 637, + "name": "LogDebug", + "nodeType": "EventDefinition", + "parameters": { + "id": 636, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 635, + "indexed": false, + "name": "_hashing", + "nodeType": "VariableDeclaration", + "scope": 637, + "src": "391:16:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 634, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "391:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "390:18:4" + }, + "src": "376:33:4" + }, + { + "anonymous": false, + "documentation": null, + "id": 641, + "name": "LogDebugOwner", + "nodeType": "EventDefinition", + "parameters": { + "id": 640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 639, + "indexed": false, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 641, + "src": "434:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 638, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "434:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "433:16:4" + }, + "src": "414:36:4" + }, + { + "constant": false, + "id": 645, + "name": "isUsed", + "nodeType": "VariableDeclaration", + "scope": 866, + "src": "456:38:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "typeName": { + "id": 644, + "keyType": { + "id": 642, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "464:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "456:24:4", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 643, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "475:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 659, + "nodeType": "Block", + "src": "540:65:4", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 650, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "550:5:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 651, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "558:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "558:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "550:18:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 654, + "nodeType": "ExpressionStatement", + "src": "550:18:4" + }, + { + "expression": { + "argumentTypes": null, + "id": 657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 655, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 617, + "src": "578:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 656, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 647, + "src": "589:9:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "578:20:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 658, + "nodeType": "ExpressionStatement", + "src": "578:20:4" + } + ] + }, + "documentation": null, + "id": 660, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 647, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 660, + "src": "513:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 646, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "513:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "512:20:4" + }, + "payable": false, + "returnParameters": { + "id": 649, + "nodeType": "ParameterList", + "parameters": [], + "src": "540:0:4" + }, + "scope": 866, + "src": "501:104:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 748, + "nodeType": "Block", + "src": "829:546:4", + "statements": [ + { + "assignments": [ + 678 + ], + "declarations": [ + { + "constant": false, + "id": 678, + "name": "message", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "839:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 677, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "839:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 688, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 682, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 662, + "src": "884:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 683, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "896:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 684, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "905:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 685, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "912:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 680, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "867:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "867:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "867:53:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 679, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "857:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "857:64:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "839:82:4" + }, + { + "assignments": [ + 690 + ], + "declarations": [ + { + "constant": false, + "id": 690, + "name": "prefix", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "931:19:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 689, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "931:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 692, + "initialValue": { + "argumentTypes": null, + "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", + "id": 691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "953:34:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", + "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" + }, + "value": "\u0019Ethereum Signed Message:\n32" + }, + "nodeType": "VariableDeclarationStatement", + "src": "931:56:4" + }, + { + "assignments": [ + 694 + ], + "declarations": [ + { + "constant": false, + "id": 694, + "name": "prefixedHash", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "997:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 693, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "997:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 702, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 698, + "name": "prefix", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 690, + "src": "1047:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "argumentTypes": null, + "id": 699, + "name": "message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 678, + "src": "1055:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "argumentTypes": null, + "id": 696, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1030:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1030:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1030:33:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 695, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1020:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1020:44:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "997:67:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1082:14:4", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 704, + "name": "isUsed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 645, + "src": "1083:6:4", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 706, + "indexExpression": { + "argumentTypes": null, + "id": 705, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "1090:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1083:13:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 709, + "name": "prefixedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 694, + "src": "1110:12:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 710, + "name": "_v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 670, + "src": "1124:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "argumentTypes": null, + "id": 711, + "name": "_r", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 672, + "src": "1128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 712, + "name": "_s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 674, + "src": "1132:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 708, + "name": "ecrecover", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3336, + "src": "1100:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" + } + }, + "id": 713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1100:35:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 714, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1139:5:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1100:44:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1082:62:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 703, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1074:7:4", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1074:71:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 718, + "nodeType": "ExpressionStatement", + "src": "1074:71:4" + }, + { + "expression": { + "argumentTypes": null, + "id": 723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 719, + "name": "isUsed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 645, + "src": "1155:6:4", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 721, + "indexExpression": { + "argumentTypes": null, + "id": 720, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "1162:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1155:13:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 722, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1171:4:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "1155:20:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 724, + "nodeType": "ExpressionStatement", + "src": "1155:20:4" + }, + { + "assignments": [ + 726 + ], + "declarations": [ + { + "constant": false, + "id": 726, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "1185:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 725, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "1185:12:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 733, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50617261746969546f6b656e", + "id": 730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1240:14:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 728, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 617, + "src": "1219:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1219:20:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1219:36:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 727, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "1206:12:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1206:50:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1185:71:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 737, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 662, + "src": "1289:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 738, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "1301:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 735, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "1274:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 3013, + "src": "1274:14:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 739, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1274:35:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 734, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1266:7:4", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1266:44:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 741, + "nodeType": "ExpressionStatement", + "src": "1266:44:4" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 743, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 662, + "src": "1339:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 744, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "1351:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 745, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "1360:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 742, + "name": "LogDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 625, + "src": "1325:13:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,uint256,string memory)" + } + }, + "id": 746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1325:43:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 747, + "nodeType": "EmitStatement", + "src": "1320:48:4" + } + ] + }, + "documentation": null, + "id": 749, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "distribute", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 662, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "640:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 661, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "640:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 664, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "669:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 663, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "669:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 666, + "name": "_salt", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "695:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 665, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "695:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 668, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "719:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 667, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "719:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 670, + "name": "_v", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "744:8:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 669, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "744:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 672, + "name": "_r", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "770:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 671, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "770:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 674, + "name": "_s", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "791:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 673, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "791:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "630:177:4" + }, + "payable": false, + "returnParameters": { + "id": 676, + "nodeType": "ParameterList", + "parameters": [], + "src": "829:0:4" + }, + "scope": 866, + "src": "611:764:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 801, + "nodeType": "Block", + "src": "1600:307:4", + "statements": [ + { + "assignments": [ + 767 + ], + "declarations": [ + { + "constant": false, + "id": 767, + "name": "message", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1610:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 766, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1610:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 777, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 771, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 751, + "src": "1655:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 772, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 753, + "src": "1667:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 773, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 755, + "src": "1676:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 774, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 757, + "src": "1683:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 769, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1638:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1638:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1638:53:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 768, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1628:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1628:64:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1610:82:4" + }, + { + "assignments": [ + 779 + ], + "declarations": [ + { + "constant": false, + "id": 779, + "name": "prefix", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1702:19:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 778, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1702:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 781, + "initialValue": { + "argumentTypes": null, + "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", + "id": 780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1724:34:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", + "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" + }, + "value": "\u0019Ethereum Signed Message:\n32" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1702:56:4" + }, + { + "assignments": [ + 783 + ], + "declarations": [ + { + "constant": false, + "id": 783, + "name": "prefixedHash", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1768:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 782, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1768:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 791, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 787, + "name": "prefix", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 779, + "src": "1818:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "argumentTypes": null, + "id": 788, + "name": "message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 767, + "src": "1826:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "argumentTypes": null, + "id": 785, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1801:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 786, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1801:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1801:33:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 784, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1791:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1791:44:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1768:67:4" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 794, + "name": "prefixedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 783, + "src": "1874:12:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 795, + "name": "_v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 759, + "src": "1888:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "argumentTypes": null, + "id": 796, + "name": "_r", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 761, + "src": "1892:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 797, + "name": "_s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 763, + "src": "1896:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 793, + "name": "ecrecover", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3336, + "src": "1864:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" + } + }, + "id": 798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1864:35:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 792, + "name": "LogDebugOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 641, + "src": "1850:13:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1850:50:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 800, + "nodeType": "EmitStatement", + "src": "1845:55:4" + } + ] + }, + "documentation": null, + "id": 802, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "checkOwnerPacked", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 764, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 751, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1416:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 750, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1416:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 753, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1445:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 752, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1445:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 755, + "name": "_salt", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1471:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 754, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1471:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 757, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1495:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 756, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1495:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 759, + "name": "_v", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1520:8:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 758, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1520:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 761, + "name": "_r", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1539:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 760, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1539:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 763, + "name": "_s", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1560:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 762, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1560:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1406:174:4" + }, + "payable": false, + "returnParameters": { + "id": 765, + "nodeType": "ParameterList", + "parameters": [], + "src": "1600:0:4" + }, + "scope": 866, + "src": "1381:526:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 836, + "nodeType": "Block", + "src": "2042:200:4", + "statements": [ + { + "assignments": [ + 816 + ], + "declarations": [ + { + "constant": false, + "id": 816, + "name": "prefix", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "2052:19:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 815, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2052:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 818, + "initialValue": { + "argumentTypes": null, + "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", + "id": 817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2074:34:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", + "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" + }, + "value": "\u0019Ethereum Signed Message:\n32" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2052:56:4" + }, + { + "assignments": [ + 820 + ], + "declarations": [ + { + "constant": false, + "id": 820, + "name": "prefixedHash", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "2118:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 819, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2118:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 828, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 824, + "name": "prefix", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 816, + "src": "2168:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "argumentTypes": null, + "id": 825, + "name": "_hash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 804, + "src": "2176:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "argumentTypes": null, + "id": 822, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2151:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 823, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2151:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2151:31:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 821, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2141:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2141:42:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2118:65:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 830, + "name": "prefixedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 820, + "src": "2210:12:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 831, + "name": "_v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 806, + "src": "2224:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "argumentTypes": null, + "id": 832, + "name": "_r", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 808, + "src": "2228:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 833, + "name": "_s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 810, + "src": "2232:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 829, + "name": "ecrecover", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3336, + "src": "2200:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" + } + }, + "id": 834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2200:35:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 814, + "id": 835, + "nodeType": "Return", + "src": "2193:42:4" + } + ] + }, + "documentation": null, + "id": 837, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "checkOwner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 804, + "name": "_hash", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1933:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 803, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1933:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 806, + "name": "_v", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1948:8:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 805, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1948:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 808, + "name": "_r", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1958:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 807, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1958:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 810, + "name": "_s", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1970:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 809, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1970:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1932:49:4" + }, + "payable": false, + "returnParameters": { + "id": 814, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 813, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "2028:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 812, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2028:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2027:9:4" + }, + "scope": 866, + "src": "1913:329:4", + "stateMutability": "pure", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 864, + "nodeType": "Block", + "src": "2358:131:4", + "statements": [ + { + "assignments": [ + 849 + ], + "declarations": [ + { + "constant": false, + "id": 849, + "name": "hashing", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2368:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 848, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2368:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 859, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 853, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 839, + "src": "2413:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 854, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 841, + "src": "2425:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 855, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 843, + "src": "2434:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 856, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 845, + "src": "2441:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 851, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2396:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2396:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2396:53:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 850, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2386:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2386:64:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2368:82:4" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 861, + "name": "hashing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 849, + "src": "2474:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 860, + "name": "LogDebug", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 637, + "src": "2465:8:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", + "typeString": "function (bytes32)" + } + }, + "id": 862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2465:17:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 863, + "nodeType": "EmitStatement", + "src": "2460:22:4" + } + ] + }, + "documentation": null, + "id": 865, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "checkHashing", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 839, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2270:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 838, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2270:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 841, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2290:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 840, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2290:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 843, + "name": "_salt", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2307:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 842, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2307:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 845, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2322:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 844, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2322:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2269:68:4" + }, + "payable": false, + "returnParameters": { + "id": 847, + "nodeType": "ParameterList", + "parameters": [], + "src": "2358:0:4" + }, + "scope": 866, + "src": "2248:241:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 867, + "src": "141:2350:4" + } + ], + "src": "0:2492:4" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/PTIDistributor.sol", + "exportedSymbols": { + "PTIDistributor": [ + 866 + ] + }, + "id": 867, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 610, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:4" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 611, + "nodeType": "ImportDirective", + "scope": 867, + "sourceUnit": 2950, + "src": "26:59:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 612, + "nodeType": "ImportDirective", + "scope": 867, + "sourceUnit": 905, + "src": "86:28:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 613, + "nodeType": "ImportDirective", + "scope": 867, + "sourceUnit": 1157, + "src": "115:24:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 614, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "168:7:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 615, + "nodeType": "InheritanceSpecifier", + "src": "168:7:4" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 866, + "linearizedBaseContracts": [ + 866, + 2949 + ], + "name": "PTIDistributor", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 617, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 866, + "src": "183:24:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 616, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "183:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 625, + "name": "LogDistribute", + "nodeType": "EventDefinition", + "parameters": { + "id": 624, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 619, + "indexed": false, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 625, + "src": "234:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "234:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 621, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 625, + "src": "254:12:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 620, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "254:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 623, + "indexed": false, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 625, + "src": "268:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 622, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "268:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "233:50:4" + }, + "src": "214:70:4" + }, + { + "anonymous": false, + "documentation": null, + "id": 633, + "name": "LogDistributeTransferable", + "nodeType": "EventDefinition", + "parameters": { + "id": 632, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 627, + "indexed": false, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 633, + "src": "321:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 626, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "321:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 629, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 633, + "src": "341:12:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 628, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "341:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 631, + "indexed": false, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 633, + "src": "355:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 630, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "355:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "320:50:4" + }, + "src": "289:82:4" + }, + { + "anonymous": false, + "documentation": null, + "id": 637, + "name": "LogDebug", + "nodeType": "EventDefinition", + "parameters": { + "id": 636, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 635, + "indexed": false, + "name": "_hashing", + "nodeType": "VariableDeclaration", + "scope": 637, + "src": "391:16:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 634, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "391:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "390:18:4" + }, + "src": "376:33:4" + }, + { + "anonymous": false, + "documentation": null, + "id": 641, + "name": "LogDebugOwner", + "nodeType": "EventDefinition", + "parameters": { + "id": 640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 639, + "indexed": false, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 641, + "src": "434:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 638, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "434:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "433:16:4" + }, + "src": "414:36:4" + }, + { + "constant": false, + "id": 645, + "name": "isUsed", + "nodeType": "VariableDeclaration", + "scope": 866, + "src": "456:38:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "typeName": { + "id": 644, + "keyType": { + "id": 642, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "464:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "456:24:4", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 643, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "475:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 659, + "nodeType": "Block", + "src": "540:65:4", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 650, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "550:5:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 651, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "558:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "558:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "550:18:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 654, + "nodeType": "ExpressionStatement", + "src": "550:18:4" + }, + { + "expression": { + "argumentTypes": null, + "id": 657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 655, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 617, + "src": "578:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 656, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 647, + "src": "589:9:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "578:20:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 658, + "nodeType": "ExpressionStatement", + "src": "578:20:4" + } + ] + }, + "documentation": null, + "id": 660, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 647, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 660, + "src": "513:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 646, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "513:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "512:20:4" + }, + "payable": false, + "returnParameters": { + "id": 649, + "nodeType": "ParameterList", + "parameters": [], + "src": "540:0:4" + }, + "scope": 866, + "src": "501:104:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 748, + "nodeType": "Block", + "src": "829:546:4", + "statements": [ + { + "assignments": [ + 678 + ], + "declarations": [ + { + "constant": false, + "id": 678, + "name": "message", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "839:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 677, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "839:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 688, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 682, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 662, + "src": "884:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 683, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "896:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 684, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "905:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 685, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "912:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 680, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "867:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "867:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "867:53:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 679, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "857:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "857:64:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "839:82:4" + }, + { + "assignments": [ + 690 + ], + "declarations": [ + { + "constant": false, + "id": 690, + "name": "prefix", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "931:19:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 689, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "931:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 692, + "initialValue": { + "argumentTypes": null, + "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", + "id": 691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "953:34:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", + "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" + }, + "value": "\u0019Ethereum Signed Message:\n32" + }, + "nodeType": "VariableDeclarationStatement", + "src": "931:56:4" + }, + { + "assignments": [ + 694 + ], + "declarations": [ + { + "constant": false, + "id": 694, + "name": "prefixedHash", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "997:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 693, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "997:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 702, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 698, + "name": "prefix", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 690, + "src": "1047:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "argumentTypes": null, + "id": 699, + "name": "message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 678, + "src": "1055:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "argumentTypes": null, + "id": 696, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1030:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1030:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1030:33:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 695, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1020:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1020:44:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "997:67:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1082:14:4", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 704, + "name": "isUsed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 645, + "src": "1083:6:4", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 706, + "indexExpression": { + "argumentTypes": null, + "id": 705, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "1090:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1083:13:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 709, + "name": "prefixedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 694, + "src": "1110:12:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 710, + "name": "_v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 670, + "src": "1124:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "argumentTypes": null, + "id": 711, + "name": "_r", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 672, + "src": "1128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 712, + "name": "_s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 674, + "src": "1132:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 708, + "name": "ecrecover", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3336, + "src": "1100:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" + } + }, + "id": 713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1100:35:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 714, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1139:5:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1100:44:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1082:62:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 703, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1074:7:4", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1074:71:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 718, + "nodeType": "ExpressionStatement", + "src": "1074:71:4" + }, + { + "expression": { + "argumentTypes": null, + "id": 723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 719, + "name": "isUsed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 645, + "src": "1155:6:4", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 721, + "indexExpression": { + "argumentTypes": null, + "id": 720, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "1162:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1155:13:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 722, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1171:4:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "1155:20:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 724, + "nodeType": "ExpressionStatement", + "src": "1155:20:4" + }, + { + "assignments": [ + 726 + ], + "declarations": [ + { + "constant": false, + "id": 726, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "1185:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 725, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "1185:12:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 733, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50617261746969546f6b656e", + "id": 730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1240:14:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 728, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 617, + "src": "1219:8:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1219:20:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1219:36:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 727, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "1206:12:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1206:50:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1185:71:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 737, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 662, + "src": "1289:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 738, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "1301:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 735, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 726, + "src": "1274:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 3013, + "src": "1274:14:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 739, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1274:35:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 734, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1266:7:4", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1266:44:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 741, + "nodeType": "ExpressionStatement", + "src": "1266:44:4" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 743, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 662, + "src": "1339:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 744, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "1351:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 745, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "1360:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 742, + "name": "LogDistribute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 625, + "src": "1325:13:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,uint256,string memory)" + } + }, + "id": 746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1325:43:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 747, + "nodeType": "EmitStatement", + "src": "1320:48:4" + } + ] + }, + "documentation": null, + "id": 749, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "distribute", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 662, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "640:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 661, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "640:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 664, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "669:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 663, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "669:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 666, + "name": "_salt", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "695:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 665, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "695:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 668, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "719:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 667, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "719:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 670, + "name": "_v", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "744:8:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 669, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "744:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 672, + "name": "_r", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "770:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 671, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "770:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 674, + "name": "_s", + "nodeType": "VariableDeclaration", + "scope": 749, + "src": "791:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 673, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "791:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "630:177:4" + }, + "payable": false, + "returnParameters": { + "id": 676, + "nodeType": "ParameterList", + "parameters": [], + "src": "829:0:4" + }, + "scope": 866, + "src": "611:764:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 801, + "nodeType": "Block", + "src": "1600:307:4", + "statements": [ + { + "assignments": [ + 767 + ], + "declarations": [ + { + "constant": false, + "id": 767, + "name": "message", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1610:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 766, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1610:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 777, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 771, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 751, + "src": "1655:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 772, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 753, + "src": "1667:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 773, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 755, + "src": "1676:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 774, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 757, + "src": "1683:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 769, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1638:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1638:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1638:53:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 768, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1628:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1628:64:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1610:82:4" + }, + { + "assignments": [ + 779 + ], + "declarations": [ + { + "constant": false, + "id": 779, + "name": "prefix", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1702:19:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 778, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1702:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 781, + "initialValue": { + "argumentTypes": null, + "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", + "id": 780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1724:34:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", + "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" + }, + "value": "\u0019Ethereum Signed Message:\n32" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1702:56:4" + }, + { + "assignments": [ + 783 + ], + "declarations": [ + { + "constant": false, + "id": 783, + "name": "prefixedHash", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1768:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 782, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1768:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 791, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 787, + "name": "prefix", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 779, + "src": "1818:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "argumentTypes": null, + "id": 788, + "name": "message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 767, + "src": "1826:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "argumentTypes": null, + "id": 785, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1801:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 786, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1801:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1801:33:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 784, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1791:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1791:44:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1768:67:4" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 794, + "name": "prefixedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 783, + "src": "1874:12:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 795, + "name": "_v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 759, + "src": "1888:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "argumentTypes": null, + "id": 796, + "name": "_r", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 761, + "src": "1892:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 797, + "name": "_s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 763, + "src": "1896:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 793, + "name": "ecrecover", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3336, + "src": "1864:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" + } + }, + "id": 798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1864:35:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 792, + "name": "LogDebugOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 641, + "src": "1850:13:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1850:50:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 800, + "nodeType": "EmitStatement", + "src": "1845:55:4" + } + ] + }, + "documentation": null, + "id": 802, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "checkOwnerPacked", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 764, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 751, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1416:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 750, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1416:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 753, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1445:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 752, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1445:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 755, + "name": "_salt", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1471:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 754, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1471:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 757, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1495:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 756, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1495:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 759, + "name": "_v", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1520:8:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 758, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1520:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 761, + "name": "_r", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1539:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 760, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1539:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 763, + "name": "_s", + "nodeType": "VariableDeclaration", + "scope": 802, + "src": "1560:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 762, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1560:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1406:174:4" + }, + "payable": false, + "returnParameters": { + "id": 765, + "nodeType": "ParameterList", + "parameters": [], + "src": "1600:0:4" + }, + "scope": 866, + "src": "1381:526:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 836, + "nodeType": "Block", + "src": "2042:200:4", + "statements": [ + { + "assignments": [ + 816 + ], + "declarations": [ + { + "constant": false, + "id": 816, + "name": "prefix", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "2052:19:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 815, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2052:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 818, + "initialValue": { + "argumentTypes": null, + "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", + "id": 817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2074:34:4", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", + "typeString": "literal_string \"\u0019Ethereum Signed Message:\n32\"" + }, + "value": "\u0019Ethereum Signed Message:\n32" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2052:56:4" + }, + { + "assignments": [ + 820 + ], + "declarations": [ + { + "constant": false, + "id": 820, + "name": "prefixedHash", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "2118:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 819, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2118:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 828, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 824, + "name": "prefix", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 816, + "src": "2168:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "argumentTypes": null, + "id": 825, + "name": "_hash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 804, + "src": "2176:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "argumentTypes": null, + "id": 822, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2151:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 823, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2151:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2151:31:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 821, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2141:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2141:42:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2118:65:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 830, + "name": "prefixedHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 820, + "src": "2210:12:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 831, + "name": "_v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 806, + "src": "2224:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "argumentTypes": null, + "id": 832, + "name": "_r", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 808, + "src": "2228:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 833, + "name": "_s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 810, + "src": "2232:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 829, + "name": "ecrecover", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3336, + "src": "2200:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", + "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" + } + }, + "id": 834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2200:35:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 814, + "id": 835, + "nodeType": "Return", + "src": "2193:42:4" + } + ] + }, + "documentation": null, + "id": 837, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "checkOwner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 804, + "name": "_hash", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1933:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 803, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1933:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 806, + "name": "_v", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1948:8:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 805, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1948:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 808, + "name": "_r", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1958:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 807, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1958:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 810, + "name": "_s", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "1970:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 809, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1970:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1932:49:4" + }, + "payable": false, + "returnParameters": { + "id": 814, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 813, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "2028:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 812, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2028:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2027:9:4" + }, + "scope": 866, + "src": "1913:329:4", + "stateMutability": "pure", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 864, + "nodeType": "Block", + "src": "2358:131:4", + "statements": [ + { + "assignments": [ + 849 + ], + "declarations": [ + { + "constant": false, + "id": 849, + "name": "hashing", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2368:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 848, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2368:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 859, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 853, + "name": "_toAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 839, + "src": "2413:10:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 854, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 841, + "src": "2425:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 855, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 843, + "src": "2434:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 856, + "name": "_reason", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 845, + "src": "2441:7:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 851, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2396:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2396:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2396:53:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 850, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2386:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2386:64:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2368:82:4" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 861, + "name": "hashing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 849, + "src": "2474:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 860, + "name": "LogDebug", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 637, + "src": "2465:8:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", + "typeString": "function (bytes32)" + } + }, + "id": 862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2465:17:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 863, + "nodeType": "EmitStatement", + "src": "2460:22:4" + } + ] + }, + "documentation": null, + "id": 865, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "checkHashing", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 839, + "name": "_toAddress", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2270:18:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 838, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2270:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 841, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2290:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 840, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2290:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 843, + "name": "_salt", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2307:13:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 842, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2307:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 845, + "name": "_reason", + "nodeType": "VariableDeclaration", + "scope": 865, + "src": "2322:14:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 844, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2322:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2269:68:4" + }, + "payable": false, + "returnParameters": { + "id": 847, + "nodeType": "ParameterList", + "parameters": [], + "src": "2358:0:4" + }, + "scope": 866, + "src": "2248:241:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 867, + "src": "141:2350:4" + } + ], + "src": "0:2492:4" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.053Z" +} \ No newline at end of file diff --git a/build/contracts/ParatiiToken.json b/build/contracts/ParatiiToken.json index 3067a0a..f6ab08b 100644 --- a/build/contracts/ParatiiToken.json +++ b/build/contracts/ParatiiToken.json @@ -1 +1,1315 @@ -{"contractName":"ParatiiToken","abi":[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"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":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"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"}],"bytecode":"0x60806040526040805190810160405280600781526020017f5061726174696900000000000000000000000000000000000000000000000000815250600390805190602001906200005192919062000117565b506040805190810160405280600381526020017f5054490000000000000000000000000000000000000000000000000000000000815250600490805190602001906200009f92919062000117565b506012600555600554600a0a6301406f4002600655348015620000c157600080fd5b50600654600081905550600654600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001c6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200015a57805160ff19168380011785556200018b565b828001600101855582156200018b579182015b828111156200018a5782518255916020019190600101906200016d565b5b5090506200019a91906200019e565b5090565b620001c391905b80821115620001bf576000816000905550600101620001a5565b5090565b90565b61120980620001d66000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a72305820166577d48b5550aa993b27daf7e4b0d5fdd241db81721f272463b89d637e924a0029"} \ No newline at end of file +{ + "contractName": "ParatiiToken", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "name", + "outputs": [ + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_from", + "type": "address" + }, + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "INITIAL_SUPPLY", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "decimals", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseApproval", + "outputs": [ + { + "name": "success", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "balance", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "symbol", + "outputs": [ + { + "name": "", + "type": "string" + } + ], + "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": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_addedValue", + "type": "uint256" + } + ], + "name": "increaseApproval", + "outputs": [ + { + "name": "success", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + }, + { + "name": "_spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "remaining", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "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" + } + ], + "bytecode": "0x60806040526040805190810160405280600781526020017f5061726174696900000000000000000000000000000000000000000000000000815250600390805190602001906200005192919062000117565b506040805190810160405280600381526020017f5054490000000000000000000000000000000000000000000000000000000000815250600490805190602001906200009f92919062000117565b506012600555600554600a0a6301406f4002600655348015620000c157600080fd5b50600654600081905550600654600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001c6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200015a57805160ff19168380011785556200018b565b828001600101855582156200018b579182015b828111156200018a5782518255916020019190600101906200016d565b5b5090506200019a91906200019e565b5090565b620001c391905b80821115620001bf576000816000905550600101620001a5565b5090565b90565b61120980620001d66000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a723058203c1d24c0a1fd5851962981202d6e865d1ce719b74c2c33e06039bee723d847730029", + "deployedBytecode": "0x6080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a723058203c1d24c0a1fd5851962981202d6e865d1ce719b74c2c33e06039bee723d847730029", + "sourceMap": "89:323:5:-;;;135:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;171:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;228:2;205:25;;281:8;;277:2;:12;265:8;:25;236:54;;297:113;8:9:-1;5:2;;;30:1;27;20:12;5:2;297:113:5;342:14;;328:11;:28;;;;389:14;;366:8;:20;375:10;366:20;;;;;;;;;;;;;;;:37;;;;89:323;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", + "deployedSourceMap": "89:323:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;135:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;135:30:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;135:30:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1884:183:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1884:183:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;179:26:19;;;;;;;;;;;;;;;;;;;;;;;728:533:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;728:533:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;236:54:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;236:54:5;;;;;;;;;;;;;;;;;;;;;;;205:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;205:25:5;;;;;;;;;;;;;;;;;;;;;;;3033:404:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3033:404:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;973:111:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;973:111:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;171:28:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;171:28:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;171:28:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:334:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:334:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2766:263:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2766:263:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2386:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2386:140:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;135:30:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1884:183:20:-;1951:4;1995:6;1963:7;:19;1971:10;1963:19;;;;;;;;;;;;;;;:29;1983:8;1963:29;;;;;;;;;;;;;;;:38;;;;2028:8;2007:38;;2016:10;2007:38;;;2038:6;2007:38;;;;;;;;;;;;;;;;;;2058:4;2051:11;;1884:183;;;;:::o;179:26:19:-;;;;:::o;728:533:20:-;810:4;855:18;845:1;830:17;;:3;:17;;;;822:26;;;;;;;;876:7;:14;884:5;876:14;;;;;;;;;;;;;;;:26;891:10;876:26;;;;;;;;;;;;;;;;855:47;;1074:27;1094:6;1074:8;:15;1083:5;1074:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;1056:8;:15;1065:5;1056:15;;;;;;;;;;;;;;;:45;;;;1123:25;1141:6;1123:8;:13;1132:3;1123:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;1107:8;:13;1116:3;1107:13;;;;;;;;;;;;;;;:41;;;;1183:22;1198:6;1183:10;:14;;:22;;;;:::i;:::-;1154:7;:14;1162:5;1154:14;;;;;;;;;;;;;;;:26;1169:10;1154:26;;;;;;;;;;;;;;;:51;;;;1227:3;1211:28;;1220:5;1211:28;;;1232:6;1211:28;;;;;;;;;;;;;;;;;;1252:4;1245:11;;728:533;;;;;;:::o;236:54:5:-;;;;:::o;205:25::-;;;;:::o;3033:404:20:-;3114:12;3134:13;3150:7;:19;3158:10;3150:19;;;;;;;;;;;;;;;:29;3170:8;3150:29;;;;;;;;;;;;;;;;3134:45;;3208:8;3189:16;:27;3185:164;;;3258:1;3226:7;:19;3234:10;3226:19;;;;;;;;;;;;;;;:29;3246:8;3226:29;;;;;;;;;;;;;;;:33;;;;3185:164;;;3312:30;3325:16;3312:8;:12;;:30;;;;:::i;:::-;3280:7;:19;3288:10;3280:19;;;;;;;;;;;;;;;:29;3300:8;3280:29;;;;;;;;;;;;;;;:62;;;;3185:164;3375:8;3354:61;;3363:10;3354:61;;;3385:7;:19;3393:10;3385:19;;;;;;;;;;;;;;;:29;3405:8;3385:29;;;;;;;;;;;;;;;;3354:61;;;;;;;;;;;;;;;;;;3428:4;3421:11;;3033:404;;;;;:::o;973:111:17:-;1033:15;1063:8;:16;1072:6;1063:16;;;;;;;;;;;;;;;;1056:23;;973:111;;;:::o;171:28:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;437:334:17:-;500:4;535:1;520:17;;:3;:17;;;;512:26;;;;;;;;631:32;656:6;631:8;:20;640:10;631:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;608:8;:20;617:10;608:20;;;;;;;;;;;;;;;:55;;;;685:25;703:6;685:8;:13;694:3;685:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;669:8;:13;678:3;669:13;;;;;;;;;;;;;;;:41;;;;737:3;716:33;;725:10;716:33;;;742:6;716:33;;;;;;;;;;;;;;;;;;762:4;755:11;;437:334;;;;:::o;2766:263:20:-;2842:12;2894:46;2928:11;2894:7;:19;2902:10;2894:19;;;;;;;;;;;;;;;:29;2914:8;2894:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;2862:7;:19;2870:10;2862:19;;;;;;;;;;;;;;;:29;2882:8;2862:29;;;;;;;;;;;;;;;:78;;;;2967:8;2946:61;;2955:10;2946:61;;;2977:7;:19;2985:10;2977:19;;;;;;;;;;;;;;;:29;2997:8;2977:29;;;;;;;;;;;;;;;;2946:61;;;;;;;;;;;;;;;;;;3020:4;3013:11;;2766:263;;;;:::o;2386:140::-;2464:17;2496:7;:15;2504:6;2496:15;;;;;;;;;;;;;;;:25;2512:8;2496:25;;;;;;;;;;;;;;;;2489:32;;2386:140;;;;:::o;562:114:15:-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;680:133::-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/token/StandardToken.sol\";\n\ncontract ParatiiToken is StandardToken {\n\n string public name = \"Paratii\";\n string public symbol = \"PTI\";\n uint public decimals = 18;\n uint public INITIAL_SUPPLY = 21000000 * (10**decimals);\n\n constructor() public {\n totalSupply = INITIAL_SUPPLY;\n balances[msg.sender] = INITIAL_SUPPLY;\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "exportedSymbols": { + "ParatiiToken": [ + 904 + ] + }, + "id": 905, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 868, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:5" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", + "file": "zeppelin-solidity/contracts/token/StandardToken.sol", + "id": 869, + "nodeType": "ImportDirective", + "scope": 905, + "sourceUnit": 3330, + "src": "26:61:5", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 870, + "name": "StandardToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3329, + "src": "114:13:5", + "typeDescriptions": { + "typeIdentifier": "t_contract$_StandardToken_$3329", + "typeString": "contract StandardToken" + } + }, + "id": 871, + "nodeType": "InheritanceSpecifier", + "src": "114:13:5" + } + ], + "contractDependencies": [ + 3026, + 3069, + 3098, + 3329 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 904, + "linearizedBaseContracts": [ + 904, + 3329, + 3026, + 3069, + 3098 + ], + "name": "ParatiiToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 874, + "name": "name", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "135:30:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 872, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "135:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": { + "argumentTypes": null, + "hexValue": "50617261746969", + "id": 873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "156:9:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae93c4febd7140468a917d366b33edbb517b06fa4f303d78c9ec21dec3acef38", + "typeString": "literal_string \"Paratii\"" + }, + "value": "Paratii" + }, + "visibility": "public" + }, + { + "constant": false, + "id": 877, + "name": "symbol", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "171:28:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 875, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "171:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": { + "argumentTypes": null, + "hexValue": "505449", + "id": 876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "194:5:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6340d7c1aa7a1d2ab6a2b0be0f6ebad7944f0a13973776467e5e331679d42bf7", + "typeString": "literal_string \"PTI\"" + }, + "value": "PTI" + }, + "visibility": "public" + }, + { + "constant": false, + "id": 880, + "name": "decimals", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "205:25:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 878, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "205:4:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "argumentTypes": null, + "hexValue": "3138", + "id": 879, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "228:2:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "visibility": "public" + }, + { + "constant": false, + "id": 888, + "name": "INITIAL_SUPPLY", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "236:54:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 881, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "236:4:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "hexValue": "3231303030303030", + "id": 882, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "265:8:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_21000000_by_1", + "typeString": "int_const 21000000" + }, + "value": "21000000" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "hexValue": "3130", + "id": 883, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "277:2:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "argumentTypes": null, + "id": 884, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 880, + "src": "281:8:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "277:12:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 886, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "276:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "265:25:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 902, + "nodeType": "Block", + "src": "318:92:5", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 891, + "name": "totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3073, + "src": "328:11:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 892, + "name": "INITIAL_SUPPLY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 888, + "src": "342:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "328:28:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 894, + "nodeType": "ExpressionStatement", + "src": "328:28:5" + }, + { + "expression": { + "argumentTypes": null, + "id": 900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 895, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "366:8:5", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 898, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 896, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "375:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "375:10:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "366:20:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 899, + "name": "INITIAL_SUPPLY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 888, + "src": "389:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "366:37:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 901, + "nodeType": "ExpressionStatement", + "src": "366:37:5" + } + ] + }, + "documentation": null, + "id": 903, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 889, + "nodeType": "ParameterList", + "parameters": [], + "src": "308:2:5" + }, + "payable": false, + "returnParameters": { + "id": 890, + "nodeType": "ParameterList", + "parameters": [], + "src": "318:0:5" + }, + "scope": 904, + "src": "297:113:5", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 905, + "src": "89:323:5" + } + ], + "src": "0:413:5" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "exportedSymbols": { + "ParatiiToken": [ + 904 + ] + }, + "id": 905, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 868, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:5" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", + "file": "zeppelin-solidity/contracts/token/StandardToken.sol", + "id": 869, + "nodeType": "ImportDirective", + "scope": 905, + "sourceUnit": 3330, + "src": "26:61:5", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 870, + "name": "StandardToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3329, + "src": "114:13:5", + "typeDescriptions": { + "typeIdentifier": "t_contract$_StandardToken_$3329", + "typeString": "contract StandardToken" + } + }, + "id": 871, + "nodeType": "InheritanceSpecifier", + "src": "114:13:5" + } + ], + "contractDependencies": [ + 3026, + 3069, + 3098, + 3329 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 904, + "linearizedBaseContracts": [ + 904, + 3329, + 3026, + 3069, + 3098 + ], + "name": "ParatiiToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 874, + "name": "name", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "135:30:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 872, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "135:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": { + "argumentTypes": null, + "hexValue": "50617261746969", + "id": 873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "156:9:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae93c4febd7140468a917d366b33edbb517b06fa4f303d78c9ec21dec3acef38", + "typeString": "literal_string \"Paratii\"" + }, + "value": "Paratii" + }, + "visibility": "public" + }, + { + "constant": false, + "id": 877, + "name": "symbol", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "171:28:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 875, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "171:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": { + "argumentTypes": null, + "hexValue": "505449", + "id": 876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "194:5:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6340d7c1aa7a1d2ab6a2b0be0f6ebad7944f0a13973776467e5e331679d42bf7", + "typeString": "literal_string \"PTI\"" + }, + "value": "PTI" + }, + "visibility": "public" + }, + { + "constant": false, + "id": 880, + "name": "decimals", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "205:25:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 878, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "205:4:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "argumentTypes": null, + "hexValue": "3138", + "id": 879, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "228:2:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "visibility": "public" + }, + { + "constant": false, + "id": 888, + "name": "INITIAL_SUPPLY", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "236:54:5", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 881, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "236:4:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "hexValue": "3231303030303030", + "id": 882, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "265:8:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_21000000_by_1", + "typeString": "int_const 21000000" + }, + "value": "21000000" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "hexValue": "3130", + "id": 883, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "277:2:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "argumentTypes": null, + "id": 884, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 880, + "src": "281:8:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "277:12:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 886, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "276:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "265:25:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 902, + "nodeType": "Block", + "src": "318:92:5", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 891, + "name": "totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3073, + "src": "328:11:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 892, + "name": "INITIAL_SUPPLY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 888, + "src": "342:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "328:28:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 894, + "nodeType": "ExpressionStatement", + "src": "328:28:5" + }, + { + "expression": { + "argumentTypes": null, + "id": 900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 895, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "366:8:5", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 898, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 896, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "375:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "375:10:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "366:20:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 899, + "name": "INITIAL_SUPPLY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 888, + "src": "389:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "366:37:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 901, + "nodeType": "ExpressionStatement", + "src": "366:37:5" + } + ] + }, + "documentation": null, + "id": 903, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 889, + "nodeType": "ParameterList", + "parameters": [], + "src": "308:2:5" + }, + "payable": false, + "returnParameters": { + "id": 890, + "nodeType": "ParameterList", + "parameters": [], + "src": "318:0:5" + }, + "scope": 904, + "src": "297:113:5", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 905, + "src": "89:323:5" + } + ], + "src": "0:413:5" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.055Z" +} \ No newline at end of file diff --git a/build/contracts/Registry.json b/build/contracts/Registry.json index 5abb321..7d7cc64 100644 --- a/build/contracts/Registry.json +++ b/build/contracts/Registry.json @@ -1 +1,6732 @@ -{"contractName":"Registry","abi":[{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"strings","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"numbers","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"contracts","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":false,"name":"_name","type":"string"},{"indexed":false,"name":"_address","type":"address"}],"name":"LogRegisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_number","type":"uint256"}],"name":"LogRegisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_string","type":"string"}],"name":"LogRegisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_name","type":"string"}],"name":"LogUnregisterString","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_address","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_number","type":"uint256"}],"name":"registerUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterUint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_string","type":"string"}],"name":"registerString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"unregisterString","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getUint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_name","type":"string"}],"name":"getString","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611b66806100a06000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ad6565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cbd565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610db0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610e60565b005b3480156103f657600080fd5b506103ff611051565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611076565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611265565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f0565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611647565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506118ad565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506118c5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118f8565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040516020018082805190602001908083835b6020831015156108555780518252602082019150602081019050602083039250610830565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156108be5780518252602082019150602081019050602083039250610899565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561098657808201518184015260208101905061096b565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040516020018082805190602001908083835b602083101515610a0257805182526020820191506020810190506020830392506109dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610a6b5780518252602082019150602081019050602083039250610a46565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b3157600080fd5b60026000826040516020018082805190602001908083835b602083101515610b6e5780518252602082019150602081019050602083039250610b49565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610bd75780518252602082019150602081019050602083039250610bb2565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c80578082015181840152602081019050610c65565b50505050905090810190601f168015610cad5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040516020018082805190602001908083835b602083101515610cfc5780518252602082019150602081019050602083039250610cd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d655780518252602082019150602081019050602083039250610d40565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e585780601f10610e2d57610100808354040283529160200191610e58565b820191906000526020600020905b815481529060010190602001808311610e3b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ebb57600080fd5b8060026000846040516020018082805190602001908083835b602083101515610ef95780518252602082019150602081019050602083039250610ed4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f625780518252602082019150602081019050602083039250610f3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611012578082015181840152602081019050610ff7565b50505050905090810190601f16801561103f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d157600080fd5b60036000826040516020018082805190602001908083835b60208310151561110e57805182526020820191506020810190506020830392506110e9565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111775780518252602082019150602081019050602083039250611152565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006111c69190611a4d565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561122857808201518184015260208101905061120d565b50505050905090810190601f1680156112555780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040516020018082805190602001908083835b6020831015156112a4578051825260208201915060208101905060208303925061127f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130d57805182526020820191506020810190506020830392506112e8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e45780601f106113b9576101008083540402835291602001916113e4565b820191906000526020600020905b8154815290600101906020018083116113c757829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144b57600080fd5b8060016000846040516020018082805190602001908083835b6020831015156114895780518252602082019150602081019050602083039250611464565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156114f257805182526020820191506020810190506020830392506114cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156116085780820151818401526020810190506115ed565b50505050905090810190601f1680156116355780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116a257600080fd5b8060036000846040516020018082805190602001908083835b6020831015156116e057805182526020820191506020810190506020830392506116bb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156117495780518252602082019150602081019050602083039250611724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020908051906020019061179f929190611a95565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156118075780820151818401526020810190506117ec565b50505050905090810190601f1680156118345780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b8381101561186d578082015181840152602081019050611852565b50505050905090810190601f16801561189a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561198f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10611a735750611a92565b601f016020900490600052602060002090810190611a919190611b15565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad657805160ff1916838001178555611b04565b82800160010185558215611b04579182015b82811115611b03578251825591602001919060010190611ae8565b5b509050611b119190611b15565b5090565b611b3791905b80821115611b33576000816000905550600101611b1b565b5090565b905600a165627a7a723058209b96bfa2e0ad484ae984a7a5cf631e36010b311e0d06bac751215e8197952b380029"} \ No newline at end of file +{ + "contractName": "Registry", + "abi": [ + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "name": "strings", + "outputs": [ + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "name": "numbers", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "name": "contracts", + "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": false, + "name": "_name", + "type": "string" + }, + { + "indexed": false, + "name": "_address", + "type": "address" + } + ], + "name": "LogRegisterAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_name", + "type": "string" + } + ], + "name": "LogUnregisterAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_name", + "type": "string" + }, + { + "indexed": false, + "name": "_number", + "type": "uint256" + } + ], + "name": "LogRegisterUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_name", + "type": "string" + } + ], + "name": "LogUnregisterUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_name", + "type": "string" + }, + { + "indexed": false, + "name": "_string", + "type": "string" + } + ], + "name": "LogRegisterString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_name", + "type": "string" + } + ], + "name": "LogUnregisterString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_name", + "type": "string" + }, + { + "name": "_address", + "type": "address" + } + ], + "name": "registerAddress", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "unregisterAddress", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_name", + "type": "string" + }, + { + "name": "_number", + "type": "uint256" + } + ], + "name": "registerUint", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "unregisterUint", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_name", + "type": "string" + }, + { + "name": "_string", + "type": "string" + } + ], + "name": "registerString", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "unregisterString", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "getContract", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "getUint", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "getString", + "outputs": [ + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611b66806100a06000396000f3006080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ad6565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cbd565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610db0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610e60565b005b3480156103f657600080fd5b506103ff611051565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611076565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611265565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f0565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611647565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506118ad565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506118c5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118f8565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040516020018082805190602001908083835b6020831015156108555780518252602082019150602081019050602083039250610830565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156108be5780518252602082019150602081019050602083039250610899565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561098657808201518184015260208101905061096b565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040516020018082805190602001908083835b602083101515610a0257805182526020820191506020810190506020830392506109dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610a6b5780518252602082019150602081019050602083039250610a46565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b3157600080fd5b60026000826040516020018082805190602001908083835b602083101515610b6e5780518252602082019150602081019050602083039250610b49565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610bd75780518252602082019150602081019050602083039250610bb2565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c80578082015181840152602081019050610c65565b50505050905090810190601f168015610cad5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040516020018082805190602001908083835b602083101515610cfc5780518252602082019150602081019050602083039250610cd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d655780518252602082019150602081019050602083039250610d40565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e585780601f10610e2d57610100808354040283529160200191610e58565b820191906000526020600020905b815481529060010190602001808311610e3b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ebb57600080fd5b8060026000846040516020018082805190602001908083835b602083101515610ef95780518252602082019150602081019050602083039250610ed4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f625780518252602082019150602081019050602083039250610f3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611012578082015181840152602081019050610ff7565b50505050905090810190601f16801561103f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d157600080fd5b60036000826040516020018082805190602001908083835b60208310151561110e57805182526020820191506020810190506020830392506110e9565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111775780518252602082019150602081019050602083039250611152565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006111c69190611a4d565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561122857808201518184015260208101905061120d565b50505050905090810190601f1680156112555780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040516020018082805190602001908083835b6020831015156112a4578051825260208201915060208101905060208303925061127f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130d57805182526020820191506020810190506020830392506112e8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e45780601f106113b9576101008083540402835291602001916113e4565b820191906000526020600020905b8154815290600101906020018083116113c757829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144b57600080fd5b8060016000846040516020018082805190602001908083835b6020831015156114895780518252602082019150602081019050602083039250611464565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156114f257805182526020820191506020810190506020830392506114cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156116085780820151818401526020810190506115ed565b50505050905090810190601f1680156116355780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116a257600080fd5b8060036000846040516020018082805190602001908083835b6020831015156116e057805182526020820191506020810190506020830392506116bb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156117495780518252602082019150602081019050602083039250611724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020908051906020019061179f929190611a95565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156118075780820151818401526020810190506117ec565b50505050905090810190601f1680156118345780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b8381101561186d578082015181840152602081019050611852565b50505050905090810190601f16801561189a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561198f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10611a735750611a92565b601f016020900490600052602060002090810190611a919190611b15565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad657805160ff1916838001178555611b04565b82800160010185558215611b04579182015b82811115611b03578251825591602001919060010190611ae8565b5b509050611b119190611b15565b5090565b611b3791905b80821115611b33576000816000905550600101611b1b565b5090565b905600a165627a7a72305820b722236462df7e6aa9ff9906ce5b63ae8d83faf8b841fb96565fda8c9fa16bd60029", + "deployedBytecode": "0x6080604052600436106100d0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806326404c37146100d5578063358177731461013e5780633708a96b146101e7578063498bff00146102505780636059936e146102cd57806375b45351146103775780638da5cb5b146103ea57806397d7e807146104415780639c981fcb146104aa578063b13f5f191461058c578063bd93528714610615578063c724982b146106c4578063ec56a37314610709578063f2fde38b1461077a575b600080fd5b3480156100e157600080fd5b5061013c600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107bd565b005b34801561014a57600080fd5b506101a5600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f357600080fd5b5061024e600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610ad6565b005b34801561025c57600080fd5b506102b7600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cbd565b6040518082815260200191505060405180910390f35b3480156102d957600080fd5b506102fc6004803603810190808035600019169060200190929190505050610db0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561033c578082015181840152602081019050610321565b50505050905090810190601f1680156103695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561038357600080fd5b506103e8600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610e60565b005b3480156103f657600080fd5b506103ff611051565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561044d57600080fd5b506104a8600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611076565b005b3480156104b657600080fd5b50610511600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611265565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610551578082015181840152602081019050610536565b50505050905090810190601f16801561057e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059857600080fd5b50610613600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f0565b005b34801561062157600080fd5b506106c2600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611647565b005b3480156106d057600080fd5b506106f360048036038101908080356000191690602001909291905050506118ad565b6040518082815260200191505060405180910390f35b34801561071557600080fd5b5061073860048036038101908080356000191690602001909291905050506118c5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561078657600080fd5b506107bb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118f8565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561081857600080fd5b60016000826040516020018082805190602001908083835b6020831015156108555780518252602082019150602081019050602083039250610830565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156108be5780518252602082019150602081019050602083039250610899565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690557fa76e7b6e2c26769c731f99243d786a5fa6f8d70201a88db135d7c0bb21d1afc3816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561098657808201518184015260208101905061096b565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060016000836040516020018082805190602001908083835b602083101515610a0257805182526020820191506020810190506020830392506109dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610a6b5780518252602082019150602081019050602083039250610a46565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b3157600080fd5b60026000826040516020018082805190602001908083835b602083101515610b6e5780518252602082019150602081019050602083039250610b49565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610bd75780518252602082019150602081019050602083039250610bb2565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600090557fa4de87e6562b1cde60454f2969e0775b4f27f1db0047f106f63c00f4e19a596a816040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c80578082015181840152602081019050610c65565b50505050905090810190601f168015610cad5780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b600060026000836040516020018082805190602001908083835b602083101515610cfc5780518252602082019150602081019050602083039250610cd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d655780518252602082019150602081019050602083039250610d40565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b60036020528060005260406000206000915090508054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e585780601f10610e2d57610100808354040283529160200191610e58565b820191906000526020600020905b815481529060010190602001808311610e3b57829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ebb57600080fd5b8060026000846040516020018082805190602001908083835b602083101515610ef95780518252602082019150602081019050602083039250610ed4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610f625780518252602082019150602081019050602083039250610f3d565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055507f8c8f8f23d981717abe1d63307dea4737664c320ea49169cf2357c32d3eb0459882826040518080602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611012578082015181840152602081019050610ff7565b50505050905090810190601f16801561103f5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d157600080fd5b60036000826040516020018082805190602001908083835b60208310151561110e57805182526020820191506020810190506020830392506110e9565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111775780518252602082019150602081019050602083039250611152565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006111c69190611a4d565b7fe6e691835b821c75b07b5cb7ae7d383e85d0041e89871368ed5f41a67134482a816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561122857808201518184015260208101905061120d565b50505050905090810190601f1680156112555780820380516001836020036101000a031916815260200191505b509250505060405180910390a150565b606060036000836040516020018082805190602001908083835b6020831015156112a4578051825260208201915060208101905060208303925061127f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130d57805182526020820191506020810190506020830392506112e8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000208054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e45780601f106113b9576101008083540402835291602001916113e4565b820191906000526020600020905b8154815290600101906020018083116113c757829003601f168201915b50505050509050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561144b57600080fd5b8060016000846040516020018082805190602001908083835b6020831015156114895780518252602082019150602081019050602083039250611464565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156114f257805182526020820191506020810190506020830392506114cd565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f2a1a55d7966a6bb6e4f08dcd6fd098b939891c9f7528df549e9770667a8a02ba828260405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b838110156116085780820151818401526020810190506115ed565b50505050905090810190601f1680156116355780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116a257600080fd5b8060036000846040516020018082805190602001908083835b6020831015156116e057805182526020820191506020810190506020830392506116bb565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156117495780518252602082019150602081019050602083039250611724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020908051906020019061179f929190611a95565b507f410eddefb807d899bc8882a95951655391fe0a4d0c444cb6545a5761f3b4aaab8282604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156118075780820151818401526020810190506117ec565b50505050905090810190601f1680156118345780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b8381101561186d578082015181840152602081019050611852565b50505050905090810190601f16801561189a5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050565b60026020528060005260406000206000915090505481565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561198f57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10611a735750611a92565b601f016020900490600052602060002090810190611a919190611b15565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ad657805160ff1916838001178555611b04565b82800160010185558215611b04579182015b82811115611b03578251825591602001919060010190611ae8565b5b509050611b119190611b15565b5090565b611b3791905b80821115611b33576000816000905550600101611b1b565b5090565b905600a165627a7a72305820b722236462df7e6aa9ff9906ce5b63ae8d83faf8b841fb96565fda8c9fa16bd60029", + "sourceMap": "190:2049:6:-;;;678:56;8:9:-1;5:2;;;30:1;27;20:12;5:2;678:56:6;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;717:10:6;709:5;;:18;;;;;;;;;;;;;;;;;;190:2049;;;;;;", + "deployedSourceMap": "190:2049:6:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;943:169;;8:9:-1;5:2;;;30:1;27;20:12;5:2;943:169:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1840:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1840:133:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1307:161;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1307:161:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1979:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1979:124:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;320:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;320:40:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;320:40:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1118:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1118:183:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;1669:165:6;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1669:165:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2109:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2109:128:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2109:128:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:197;;8:9:-1;5:2;;;30:1;27;20:12;5:2;740:197:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1474:189;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1474:189:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;276:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;276:38:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;227:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;227:43:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;943::6;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1018:9:6;:45;1055:5;1038:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1038:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1038:23:6;;;1028:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1028:34:6;;;;;;;;;;;;;;;;1018:45;;;;;;;;;;;;;;;;;;1011:52;;;;;;;;;;;1078:27;1099:5;1078:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1078:27:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;943:169;:::o;1840:133::-;1895:7;1921:9;:45;1958:5;1941:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1941:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1941:23:6;;;1931:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1931:34:6;;;;;;;;;;;;;;;;1921:45;;;;;;;;;;;;;;;;;;;;;;;;;;;1914:52;;1840:133;;;:::o;1307:161::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1379:7:6;:43;1414:5;1397:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1397:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1397:23:6;;;1387:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1387:34:6;;;;;;;;;;;;;;;;1379:43;;;;;;;;;;;;;;;;;1372:50;;;1437:24;1455:5;1437:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1437:24:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1307:161;:::o;1979:124::-;2030:4;2053:7;:43;2088:5;2071:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2071:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2071:23:6;;;2061:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2061:34:6;;;;;;;;;;;;;;;;2053:43;;;;;;;;;;;;;;;;;;2046:50;;1979:124;;;:::o;320:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1118:183::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1241:7:6;1195;:43;1230:5;1213:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1213:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1213:23:6;;;1203:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1203:34:6;;;;;;;;;;;;;;;;1195:43;;;;;;;;;;;;;;;;;:53;;;;1263:31;1279:5;1286:7;1263:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1263:31:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1118:183;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;1669:165:6:-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1743:7:6;:43;1778:5;1761:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1761:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1761:23:6;;;1751:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1751:34:6;;;;;;;;;;;;;;;;1743:43;;;;;;;;;;;;;;;;;;1736:50;;;;:::i;:::-;1801:26;1821:5;1801:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1801:26:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1669:165;:::o;2109:128::-;2162:6;2187:7;:43;2222:5;2205:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2205:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2205:23:6;;;2195:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2195:34:6;;;;;;;;;;;;;;;;2187:43;;;;;;;;;;;;;;;;;2180:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2109:128;;;:::o;740:197::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;872:8:6;824:9;:45;861:5;844:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;844:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;844:23:6;;;834:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;834:34:6;;;;;;;;;;;;;;;;824:45;;;;;;;;;;;;;;;;;;:56;;;;;;;;;;;;;;;;;;895:35;914:5;921:8;895:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;895:35:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:197;;:::o;1474:189::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;1601:7:6;1555;:43;1590:5;1573:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1573:23:6;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1573:23:6;;;1563:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1563:34:6;;;;;;;;;;;;;;;;1555:43;;;;;;;;;;;;;;;;;:53;;;;;;;;;;;;:::i;:::-;;1623:33;1641:5;1648:7;1623:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1623:33:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1623:33:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1474:189;;:::o;276:38::-;;;;;;;;;;;;;;;;;:::o;227:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;827:169:16:-;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;190:2049:6:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\n\n/**\n * @dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *\n **/\ncontract Registry is Ownable {\n\n mapping (bytes32=>address) public contracts;\n mapping (bytes32=>uint) public numbers;\n mapping (bytes32=>string) public strings;\n\n event LogRegisterAddress(string _name, address _address);\n event LogUnregisterAddress(string _name);\n event LogRegisterUint(string _name, uint _number);\n event LogUnregisterUint(string _name);\n event LogRegisterString(string _name, string _string);\n event LogUnregisterString(string _name);\n\n constructor() public {\n owner = msg.sender;\n }\n\n function registerAddress(string _name, address _address) public onlyOwner {\n contracts[keccak256(abi.encodePacked(_name))] = _address;\n emit LogRegisterAddress(_name, _address);\n }\n\n function unregisterAddress(string _name) public onlyOwner {\n delete contracts[keccak256(abi.encodePacked(_name))];\n emit LogUnregisterAddress(_name);\n }\n\n function registerUint(string _name, uint _number) public onlyOwner {\n numbers[keccak256(abi.encodePacked(_name))] = _number;\n emit LogRegisterUint(_name, _number);\n }\n\n function unregisterUint(string _name) public onlyOwner {\n delete numbers[keccak256(abi.encodePacked(_name))];\n emit LogUnregisterUint(_name);\n }\n\n function registerString(string _name, string _string) public onlyOwner {\n strings[keccak256(abi.encodePacked(_name))] = _string;\n emit LogRegisterString(_name, _string);\n }\n\n function unregisterString(string _name) public onlyOwner {\n delete strings[keccak256(abi.encodePacked(_name))];\n emit LogUnregisterString(_name);\n }\n\n function getContract(string _name) public view returns(address) {\n return contracts[keccak256(abi.encodePacked(_name))];\n }\n\n function getUint(string _name) public view returns(uint) {\n return numbers[keccak256(abi.encodePacked(_name))];\n }\n\n function getString(string _name) public view returns(string) {\n return strings[keccak256(abi.encodePacked(_name))];\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "exportedSymbols": { + "Registry": [ + 1156 + ] + }, + "id": 1157, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 906, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:6" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 907, + "nodeType": "ImportDirective", + "scope": 1157, + "sourceUnit": 2950, + "src": "26:59:6", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 908, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "211:7:6", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 909, + "nodeType": "InheritanceSpecifier", + "src": "211:7:6" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": "@dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *", + "fullyImplemented": true, + "id": 1156, + "linearizedBaseContracts": [ + 1156, + 2949 + ], + "name": "Registry", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 913, + "name": "contracts", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "227:43:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + }, + "typeName": { + "id": 912, + "keyType": { + "id": 910, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "236:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "227:26:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + }, + "valueType": { + "id": 911, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "245:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 917, + "name": "numbers", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "276:38:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "typeName": { + "id": 916, + "keyType": { + "id": 914, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "285:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "276:23:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 915, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "294:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 921, + "name": "strings", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "320:40:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string)" + }, + "typeName": { + "id": 920, + "keyType": { + "id": 918, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "329:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "320:25:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string)" + }, + "valueType": { + "id": 919, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "338:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 927, + "name": "LogRegisterAddress", + "nodeType": "EventDefinition", + "parameters": { + "id": 926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 923, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "392:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 922, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "392:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 925, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "406:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "406:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "391:32:6" + }, + "src": "367:57:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 931, + "name": "LogUnregisterAddress", + "nodeType": "EventDefinition", + "parameters": { + "id": 930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 929, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 931, + "src": "456:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 928, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "456:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "455:14:6" + }, + "src": "429:41:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 937, + "name": "LogRegisterUint", + "nodeType": "EventDefinition", + "parameters": { + "id": 936, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 933, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 937, + "src": "497:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 932, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "497:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 935, + "indexed": false, + "name": "_number", + "nodeType": "VariableDeclaration", + "scope": 937, + "src": "511:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 934, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "511:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "496:28:6" + }, + "src": "475:50:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 941, + "name": "LogUnregisterUint", + "nodeType": "EventDefinition", + "parameters": { + "id": 940, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 939, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 941, + "src": "554:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 938, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "554:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "553:14:6" + }, + "src": "530:38:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 947, + "name": "LogRegisterString", + "nodeType": "EventDefinition", + "parameters": { + "id": 946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 943, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 947, + "src": "597:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 942, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "597:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 945, + "indexed": false, + "name": "_string", + "nodeType": "VariableDeclaration", + "scope": 947, + "src": "611:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 944, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "611:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "596:30:6" + }, + "src": "573:54:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 951, + "name": "LogUnregisterString", + "nodeType": "EventDefinition", + "parameters": { + "id": 950, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 949, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 951, + "src": "658:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 948, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "658:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "657:14:6" + }, + "src": "632:40:6" + }, + { + "body": { + "id": 959, + "nodeType": "Block", + "src": "699:35:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 954, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "709:5:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 955, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "717:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "717:10:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "709:18:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 958, + "nodeType": "ExpressionStatement", + "src": "709:18:6" + } + ] + }, + "documentation": null, + "id": 960, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 952, + "nodeType": "ParameterList", + "parameters": [], + "src": "689:2:6" + }, + "payable": false, + "returnParameters": { + "id": 953, + "nodeType": "ParameterList", + "parameters": [], + "src": "699:0:6" + }, + "scope": 1156, + "src": "678:56:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 985, + "nodeType": "Block", + "src": "814:123:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 969, + "name": "contracts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 913, + "src": "824:9:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 976, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 973, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 962, + "src": "861:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 971, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "844:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "844:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "844:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 970, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "834:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "834:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "824:45:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 977, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 964, + "src": "872:8:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "824:56:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 979, + "nodeType": "ExpressionStatement", + "src": "824:56:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 981, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 962, + "src": "914:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 982, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 964, + "src": "921:8:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 980, + "name": "LogRegisterAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 927, + "src": "895:18:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (string memory,address)" + } + }, + "id": 983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "895:35:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 984, + "nodeType": "EmitStatement", + "src": "890:40:6" + } + ] + }, + "documentation": null, + "id": 986, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 967, + "modifierName": { + "argumentTypes": null, + "id": 966, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "804:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "804:9:6" + } + ], + "name": "registerAddress", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 962, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 986, + "src": "765:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 961, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "765:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 964, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 986, + "src": "779:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "779:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "764:32:6" + }, + "payable": false, + "returnParameters": { + "id": 968, + "nodeType": "ParameterList", + "parameters": [], + "src": "814:0:6" + }, + "scope": 1156, + "src": "740:197:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1007, + "nodeType": "Block", + "src": "1001:111:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1011:52:6", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 993, + "name": "contracts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 913, + "src": "1018:9:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 1000, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 997, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 988, + "src": "1055:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 995, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1038:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 996, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1038:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1038:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 994, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1028:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1028:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1018:45:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1002, + "nodeType": "ExpressionStatement", + "src": "1011:52:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1004, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 988, + "src": "1099:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1003, + "name": "LogUnregisterAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 931, + "src": "1078:20:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1078:27:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1006, + "nodeType": "EmitStatement", + "src": "1073:32:6" + } + ] + }, + "documentation": null, + "id": 1008, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 991, + "modifierName": { + "argumentTypes": null, + "id": 990, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "991:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "991:9:6" + } + ], + "name": "unregisterAddress", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 988, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1008, + "src": "970:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 987, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "970:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "969:14:6" + }, + "payable": false, + "returnParameters": { + "id": 992, + "nodeType": "ParameterList", + "parameters": [], + "src": "1001:0:6" + }, + "scope": 1156, + "src": "943:169:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1033, + "nodeType": "Block", + "src": "1185:116:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1017, + "name": "numbers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 917, + "src": "1195:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 1024, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1021, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1010, + "src": "1230:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1019, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1213:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1213:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1213:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1018, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1203:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1203:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1195:43:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1025, + "name": "_number", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "1241:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1195:53:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1027, + "nodeType": "ExpressionStatement", + "src": "1195:53:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1029, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1010, + "src": "1279:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1030, + "name": "_number", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "1286:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1028, + "name": "LogRegisterUint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 937, + "src": "1263:15:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1263:31:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1032, + "nodeType": "EmitStatement", + "src": "1258:36:6" + } + ] + }, + "documentation": null, + "id": 1034, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1015, + "modifierName": { + "argumentTypes": null, + "id": 1014, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1175:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1175:9:6" + } + ], + "name": "registerUint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1013, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1010, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "1140:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1009, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1140:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1012, + "name": "_number", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "1154:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1011, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1154:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1139:28:6" + }, + "payable": false, + "returnParameters": { + "id": 1016, + "nodeType": "ParameterList", + "parameters": [], + "src": "1185:0:6" + }, + "scope": 1156, + "src": "1118:183:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1055, + "nodeType": "Block", + "src": "1362:106:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1049, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1372:50:6", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1041, + "name": "numbers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 917, + "src": "1379:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 1048, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1045, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1036, + "src": "1414:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1043, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1397:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1044, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1397:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1397:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1042, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1387:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1047, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1387:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1379:43:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1050, + "nodeType": "ExpressionStatement", + "src": "1372:50:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1052, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1036, + "src": "1455:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1051, + "name": "LogUnregisterUint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "1437:17:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1437:24:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1054, + "nodeType": "EmitStatement", + "src": "1432:29:6" + } + ] + }, + "documentation": null, + "id": 1056, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1039, + "modifierName": { + "argumentTypes": null, + "id": 1038, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1352:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1352:9:6" + } + ], + "name": "unregisterUint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1036, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1056, + "src": "1331:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1035, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1331:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1330:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1040, + "nodeType": "ParameterList", + "parameters": [], + "src": "1362:0:6" + }, + "scope": 1156, + "src": "1307:161:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1081, + "nodeType": "Block", + "src": "1545:118:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1065, + "name": "strings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "1555:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 1072, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1069, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1058, + "src": "1590:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1067, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1573:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1573:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1573:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1066, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1563:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1563:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1555:43:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1073, + "name": "_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "1601:7:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "1555:53:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1075, + "nodeType": "ExpressionStatement", + "src": "1555:53:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1077, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1058, + "src": "1641:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1078, + "name": "_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "1648:7:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1076, + "name": "LogRegisterString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 947, + "src": "1623:17:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1623:33:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1080, + "nodeType": "EmitStatement", + "src": "1618:38:6" + } + ] + }, + "documentation": null, + "id": 1082, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1063, + "modifierName": { + "argumentTypes": null, + "id": 1062, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1535:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1535:9:6" + } + ], + "name": "registerString", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1061, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1058, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1082, + "src": "1498:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1057, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1498:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1060, + "name": "_string", + "nodeType": "VariableDeclaration", + "scope": 1082, + "src": "1512:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1059, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1512:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1497:30:6" + }, + "payable": false, + "returnParameters": { + "id": 1064, + "nodeType": "ParameterList", + "parameters": [], + "src": "1545:0:6" + }, + "scope": 1156, + "src": "1474:189:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1103, + "nodeType": "Block", + "src": "1726:108:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1736:50:6", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1089, + "name": "strings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "1743:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 1096, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1093, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1084, + "src": "1778:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1091, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1761:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1761:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1761:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1090, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1751:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1751:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1743:43:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1098, + "nodeType": "ExpressionStatement", + "src": "1736:50:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1100, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1084, + "src": "1821:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1099, + "name": "LogUnregisterString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 951, + "src": "1801:19:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1801:26:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1102, + "nodeType": "EmitStatement", + "src": "1796:31:6" + } + ] + }, + "documentation": null, + "id": 1104, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1087, + "modifierName": { + "argumentTypes": null, + "id": 1086, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1716:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1716:9:6" + } + ], + "name": "unregisterString", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1084, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1104, + "src": "1695:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1083, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1695:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1694:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1088, + "nodeType": "ParameterList", + "parameters": [], + "src": "1726:0:6" + }, + "scope": 1156, + "src": "1669:165:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1120, + "nodeType": "Block", + "src": "1904:69:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1111, + "name": "contracts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 913, + "src": "1921:9:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 1118, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1115, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1106, + "src": "1958:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1113, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1941:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1941:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1941:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1112, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1931:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1931:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1921:45:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1110, + "id": 1119, + "nodeType": "Return", + "src": "1914:52:6" + } + ] + }, + "documentation": null, + "id": 1121, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getContract", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1106, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "1861:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1105, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1861:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1860:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1109, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "1895:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1895:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1894:9:6" + }, + "scope": 1156, + "src": "1840:133:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1137, + "nodeType": "Block", + "src": "2036:67:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1128, + "name": "numbers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 917, + "src": "2053:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 1135, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1132, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1123, + "src": "2088:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1130, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2071:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2071:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2071:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1129, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2061:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2061:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2053:43:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1127, + "id": 1136, + "nodeType": "Return", + "src": "2046:50:6" + } + ] + }, + "documentation": null, + "id": 1138, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getUint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1124, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1123, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1138, + "src": "1996:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1122, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1996:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1995:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1127, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1126, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1138, + "src": "2030:4:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1125, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2030:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2029:6:6" + }, + "scope": 1156, + "src": "1979:124:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1154, + "nodeType": "Block", + "src": "2170:67:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1145, + "name": "strings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "2187:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 1152, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1149, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1140, + "src": "2222:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1147, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2205:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2205:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1150, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2205:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1146, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2195:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1151, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2195:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2187:43:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 1144, + "id": 1153, + "nodeType": "Return", + "src": "2180:50:6" + } + ] + }, + "documentation": null, + "id": 1155, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getString", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1140, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1155, + "src": "2128:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1139, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2128:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2127:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1144, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1143, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1155, + "src": "2162:6:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1142, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2162:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2161:8:6" + }, + "scope": 1156, + "src": "2109:128:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1157, + "src": "190:2049:6" + } + ], + "src": "0:2240:6" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "exportedSymbols": { + "Registry": [ + 1156 + ] + }, + "id": 1157, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 906, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:6" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 907, + "nodeType": "ImportDirective", + "scope": 1157, + "sourceUnit": 2950, + "src": "26:59:6", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 908, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "211:7:6", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 909, + "nodeType": "InheritanceSpecifier", + "src": "211:7:6" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": "@dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *", + "fullyImplemented": true, + "id": 1156, + "linearizedBaseContracts": [ + 1156, + 2949 + ], + "name": "Registry", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 913, + "name": "contracts", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "227:43:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + }, + "typeName": { + "id": 912, + "keyType": { + "id": 910, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "236:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "227:26:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + }, + "valueType": { + "id": 911, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "245:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 917, + "name": "numbers", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "276:38:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "typeName": { + "id": 916, + "keyType": { + "id": 914, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "285:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "276:23:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 915, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "294:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 921, + "name": "strings", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "320:40:6", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string)" + }, + "typeName": { + "id": 920, + "keyType": { + "id": 918, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "329:7:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "320:25:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string)" + }, + "valueType": { + "id": 919, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "338:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 927, + "name": "LogRegisterAddress", + "nodeType": "EventDefinition", + "parameters": { + "id": 926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 923, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "392:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 922, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "392:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 925, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "406:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "406:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "391:32:6" + }, + "src": "367:57:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 931, + "name": "LogUnregisterAddress", + "nodeType": "EventDefinition", + "parameters": { + "id": 930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 929, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 931, + "src": "456:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 928, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "456:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "455:14:6" + }, + "src": "429:41:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 937, + "name": "LogRegisterUint", + "nodeType": "EventDefinition", + "parameters": { + "id": 936, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 933, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 937, + "src": "497:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 932, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "497:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 935, + "indexed": false, + "name": "_number", + "nodeType": "VariableDeclaration", + "scope": 937, + "src": "511:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 934, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "511:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "496:28:6" + }, + "src": "475:50:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 941, + "name": "LogUnregisterUint", + "nodeType": "EventDefinition", + "parameters": { + "id": 940, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 939, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 941, + "src": "554:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 938, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "554:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "553:14:6" + }, + "src": "530:38:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 947, + "name": "LogRegisterString", + "nodeType": "EventDefinition", + "parameters": { + "id": 946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 943, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 947, + "src": "597:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 942, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "597:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 945, + "indexed": false, + "name": "_string", + "nodeType": "VariableDeclaration", + "scope": 947, + "src": "611:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 944, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "611:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "596:30:6" + }, + "src": "573:54:6" + }, + { + "anonymous": false, + "documentation": null, + "id": 951, + "name": "LogUnregisterString", + "nodeType": "EventDefinition", + "parameters": { + "id": 950, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 949, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 951, + "src": "658:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 948, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "658:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "657:14:6" + }, + "src": "632:40:6" + }, + { + "body": { + "id": 959, + "nodeType": "Block", + "src": "699:35:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 954, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "709:5:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 955, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "717:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "717:10:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "709:18:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 958, + "nodeType": "ExpressionStatement", + "src": "709:18:6" + } + ] + }, + "documentation": null, + "id": 960, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 952, + "nodeType": "ParameterList", + "parameters": [], + "src": "689:2:6" + }, + "payable": false, + "returnParameters": { + "id": 953, + "nodeType": "ParameterList", + "parameters": [], + "src": "699:0:6" + }, + "scope": 1156, + "src": "678:56:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 985, + "nodeType": "Block", + "src": "814:123:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 969, + "name": "contracts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 913, + "src": "824:9:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 976, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 973, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 962, + "src": "861:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 971, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "844:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "844:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "844:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 970, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "834:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "834:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "824:45:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 977, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 964, + "src": "872:8:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "824:56:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 979, + "nodeType": "ExpressionStatement", + "src": "824:56:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 981, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 962, + "src": "914:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 982, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 964, + "src": "921:8:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 980, + "name": "LogRegisterAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 927, + "src": "895:18:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (string memory,address)" + } + }, + "id": 983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "895:35:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 984, + "nodeType": "EmitStatement", + "src": "890:40:6" + } + ] + }, + "documentation": null, + "id": 986, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 967, + "modifierName": { + "argumentTypes": null, + "id": 966, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "804:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "804:9:6" + } + ], + "name": "registerAddress", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 962, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 986, + "src": "765:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 961, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "765:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 964, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 986, + "src": "779:16:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "779:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "764:32:6" + }, + "payable": false, + "returnParameters": { + "id": 968, + "nodeType": "ParameterList", + "parameters": [], + "src": "814:0:6" + }, + "scope": 1156, + "src": "740:197:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1007, + "nodeType": "Block", + "src": "1001:111:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1011:52:6", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 993, + "name": "contracts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 913, + "src": "1018:9:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 1000, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 997, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 988, + "src": "1055:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 995, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1038:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 996, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1038:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1038:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 994, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1028:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1028:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1018:45:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1002, + "nodeType": "ExpressionStatement", + "src": "1011:52:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1004, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 988, + "src": "1099:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1003, + "name": "LogUnregisterAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 931, + "src": "1078:20:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1078:27:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1006, + "nodeType": "EmitStatement", + "src": "1073:32:6" + } + ] + }, + "documentation": null, + "id": 1008, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 991, + "modifierName": { + "argumentTypes": null, + "id": 990, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "991:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "991:9:6" + } + ], + "name": "unregisterAddress", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 988, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1008, + "src": "970:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 987, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "970:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "969:14:6" + }, + "payable": false, + "returnParameters": { + "id": 992, + "nodeType": "ParameterList", + "parameters": [], + "src": "1001:0:6" + }, + "scope": 1156, + "src": "943:169:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1033, + "nodeType": "Block", + "src": "1185:116:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1017, + "name": "numbers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 917, + "src": "1195:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 1024, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1021, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1010, + "src": "1230:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1019, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1213:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1213:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1213:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1018, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1203:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1203:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1195:43:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1025, + "name": "_number", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "1241:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1195:53:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1027, + "nodeType": "ExpressionStatement", + "src": "1195:53:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1029, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1010, + "src": "1279:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1030, + "name": "_number", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1012, + "src": "1286:7:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1028, + "name": "LogRegisterUint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 937, + "src": "1263:15:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1263:31:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1032, + "nodeType": "EmitStatement", + "src": "1258:36:6" + } + ] + }, + "documentation": null, + "id": 1034, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1015, + "modifierName": { + "argumentTypes": null, + "id": 1014, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1175:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1175:9:6" + } + ], + "name": "registerUint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1013, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1010, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "1140:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1009, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1140:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1012, + "name": "_number", + "nodeType": "VariableDeclaration", + "scope": 1034, + "src": "1154:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1011, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1154:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1139:28:6" + }, + "payable": false, + "returnParameters": { + "id": 1016, + "nodeType": "ParameterList", + "parameters": [], + "src": "1185:0:6" + }, + "scope": 1156, + "src": "1118:183:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1055, + "nodeType": "Block", + "src": "1362:106:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1049, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1372:50:6", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1041, + "name": "numbers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 917, + "src": "1379:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 1048, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1045, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1036, + "src": "1414:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1043, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1397:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1044, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1397:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1397:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1042, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1387:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1047, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1387:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1379:43:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1050, + "nodeType": "ExpressionStatement", + "src": "1372:50:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1052, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1036, + "src": "1455:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1051, + "name": "LogUnregisterUint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "1437:17:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1437:24:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1054, + "nodeType": "EmitStatement", + "src": "1432:29:6" + } + ] + }, + "documentation": null, + "id": 1056, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1039, + "modifierName": { + "argumentTypes": null, + "id": 1038, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1352:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1352:9:6" + } + ], + "name": "unregisterUint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1036, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1056, + "src": "1331:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1035, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1331:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1330:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1040, + "nodeType": "ParameterList", + "parameters": [], + "src": "1362:0:6" + }, + "scope": 1156, + "src": "1307:161:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1081, + "nodeType": "Block", + "src": "1545:118:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1065, + "name": "strings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "1555:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 1072, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1069, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1058, + "src": "1590:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1067, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1573:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1573:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1573:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1066, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1563:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1563:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1555:43:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1073, + "name": "_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "1601:7:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "1555:53:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1075, + "nodeType": "ExpressionStatement", + "src": "1555:53:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1077, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1058, + "src": "1641:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1078, + "name": "_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "1648:7:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1076, + "name": "LogRegisterString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 947, + "src": "1623:17:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1623:33:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1080, + "nodeType": "EmitStatement", + "src": "1618:38:6" + } + ] + }, + "documentation": null, + "id": 1082, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1063, + "modifierName": { + "argumentTypes": null, + "id": 1062, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1535:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1535:9:6" + } + ], + "name": "registerString", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1061, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1058, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1082, + "src": "1498:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1057, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1498:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1060, + "name": "_string", + "nodeType": "VariableDeclaration", + "scope": 1082, + "src": "1512:14:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1059, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1512:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1497:30:6" + }, + "payable": false, + "returnParameters": { + "id": 1064, + "nodeType": "ParameterList", + "parameters": [], + "src": "1545:0:6" + }, + "scope": 1156, + "src": "1474:189:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1103, + "nodeType": "Block", + "src": "1726:108:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1736:50:6", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1089, + "name": "strings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "1743:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 1096, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1093, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1084, + "src": "1778:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1091, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1761:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1761:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1761:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1090, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1751:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1751:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1743:43:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1098, + "nodeType": "ExpressionStatement", + "src": "1736:50:6" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1100, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1084, + "src": "1821:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1099, + "name": "LogUnregisterString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 951, + "src": "1801:19:6", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1801:26:6", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1102, + "nodeType": "EmitStatement", + "src": "1796:31:6" + } + ] + }, + "documentation": null, + "id": 1104, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1087, + "modifierName": { + "argumentTypes": null, + "id": 1086, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "1716:9:6", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1716:9:6" + } + ], + "name": "unregisterString", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1084, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1104, + "src": "1695:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1083, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1695:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1694:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1088, + "nodeType": "ParameterList", + "parameters": [], + "src": "1726:0:6" + }, + "scope": 1156, + "src": "1669:165:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1120, + "nodeType": "Block", + "src": "1904:69:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1111, + "name": "contracts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 913, + "src": "1921:9:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" + } + }, + "id": 1118, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1115, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1106, + "src": "1958:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1113, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1941:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1941:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1941:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1112, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1931:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1931:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1921:45:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1110, + "id": 1119, + "nodeType": "Return", + "src": "1914:52:6" + } + ] + }, + "documentation": null, + "id": 1121, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getContract", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1106, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "1861:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1105, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1861:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1860:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1109, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "1895:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1895:7:6", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1894:9:6" + }, + "scope": 1156, + "src": "1840:133:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1137, + "nodeType": "Block", + "src": "2036:67:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1128, + "name": "numbers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 917, + "src": "2053:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 1135, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1132, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1123, + "src": "2088:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1130, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2071:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2071:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2071:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1129, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2061:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2061:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2053:43:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1127, + "id": 1136, + "nodeType": "Return", + "src": "2046:50:6" + } + ] + }, + "documentation": null, + "id": 1138, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getUint", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1124, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1123, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1138, + "src": "1996:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1122, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1996:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1995:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1127, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1126, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1138, + "src": "2030:4:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1125, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2030:4:6", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2029:6:6" + }, + "scope": 1156, + "src": "1979:124:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1154, + "nodeType": "Block", + "src": "2170:67:6", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1145, + "name": "strings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "2187:7:6", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" + } + }, + "id": 1152, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1149, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1140, + "src": "2222:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1147, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2205:3:6", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2205:16:6", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1150, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2205:23:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1146, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2195:9:6", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1151, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2195:34:6", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2187:43:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 1144, + "id": 1153, + "nodeType": "Return", + "src": "2180:50:6" + } + ] + }, + "documentation": null, + "id": 1155, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getString", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1140, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1155, + "src": "2128:12:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1139, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2128:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2127:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1144, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1143, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1155, + "src": "2162:6:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1142, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2162:6:6", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2161:8:6" + }, + "scope": 1156, + "src": "2109:128:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1157, + "src": "190:2049:6" + } + ], + "src": "0:2240:6" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.068Z" +} \ No newline at end of file diff --git a/build/contracts/SafeMath.json b/build/contracts/SafeMath.json index 7daeef7..755ba1f 100644 --- a/build/contracts/SafeMath.json +++ b/build/contracts/SafeMath.json @@ -1 +1,2439 @@ -{"contractName":"SafeMath","abi":[],"bytecode":"0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582022c24bdb3a959eab97283bcff4452acdafd8b0855b4432d435c67754b3cbeb610029"} \ No newline at end of file +{ + "contractName": "SafeMath", + "abi": [], + "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582022c24bdb3a959eab97283bcff4452acdafd8b0855b4432d435c67754b3cbeb610029", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582022c24bdb3a959eab97283bcff4452acdafd8b0855b4432d435c67754b3cbeb610029", + "sourceMap": "117:698:15:-;;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": "117:698:15:-;;;;;;;;", + "source": "pragma solidity ^0.4.11;\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant 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 constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n}\n", + "sourcePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "ast": { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "exportedSymbols": { + "SafeMath": [ + 2893 + ] + }, + "id": 2894, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2800, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:15" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "library", + "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", + "fullyImplemented": true, + "id": 2893, + "linearizedBaseContracts": [ + 2893 + ], + "name": "SafeMath", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 2829, + "nodeType": "Block", + "src": "209:76:15", + "statements": [ + { + "assignments": [ + 2810 + ], + "declarations": [ + { + "constant": false, + "id": 2810, + "name": "c", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "215:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2809, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "215:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2814, + "initialValue": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2813, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2811, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2802, + "src": "227:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "argumentTypes": null, + "id": 2812, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "231:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "227:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "215:17:15" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2816, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2802, + "src": "245:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "250:1:15", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "245:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2819, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "255:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "argumentTypes": null, + "id": 2820, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2802, + "src": "259:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "255:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2822, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "264:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "255:10:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "245:20:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2815, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "238:6:15", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "238:28:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2826, + "nodeType": "ExpressionStatement", + "src": "238:28:15" + }, + { + "expression": { + "argumentTypes": null, + "id": 2827, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "279:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2808, + "id": 2828, + "nodeType": "Return", + "src": "272:8:15" + } + ] + }, + "documentation": null, + "id": 2830, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "mul", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2802, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "151:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2801, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "151:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2804, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "162:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "162:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "150:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2808, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2807, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "200:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2806, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "200:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "199:9:15" + }, + "scope": 2893, + "src": "138:147:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 2847, + "nodeType": "Block", + "src": "360:198:15", + "statements": [ + { + "assignments": [ + 2840 + ], + "declarations": [ + { + "constant": false, + "id": 2840, + "name": "c", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "440:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2839, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "440:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2844, + "initialValue": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2843, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2841, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2832, + "src": "452:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "argumentTypes": null, + "id": 2842, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2834, + "src": "456:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "452:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "440:17:15" + }, + { + "expression": { + "argumentTypes": null, + "id": 2845, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "552:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2838, + "id": 2846, + "nodeType": "Return", + "src": "545:8:15" + } + ] + }, + "documentation": null, + "id": 2848, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "div", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2835, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2832, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "302:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "302:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2834, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "313:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2833, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "313:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "301:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2838, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2837, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "351:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2836, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "351:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "350:9:15" + }, + "scope": 2893, + "src": "289:269:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 2867, + "nodeType": "Block", + "src": "633:43:15", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2858, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2852, + "src": "646:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "id": 2859, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2850, + "src": "651:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "646:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2857, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "639:6:15", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "639:14:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2862, + "nodeType": "ExpressionStatement", + "src": "639:14:15" + }, + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2863, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2850, + "src": "666:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "argumentTypes": null, + "id": 2864, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2852, + "src": "670:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "666:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2856, + "id": 2866, + "nodeType": "Return", + "src": "659:12:15" + } + ] + }, + "documentation": null, + "id": 2868, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "sub", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2853, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2850, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2868, + "src": "575:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2849, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "575:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2852, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2868, + "src": "586:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2851, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "586:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "574:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2855, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2868, + "src": "624:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "624:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "623:9:15" + }, + "scope": 2893, + "src": "562:114:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 2891, + "nodeType": "Block", + "src": "751:62:15", + "statements": [ + { + "assignments": [ + 2878 + ], + "declarations": [ + { + "constant": false, + "id": 2878, + "name": "c", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "757:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2877, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "757:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2882, + "initialValue": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2879, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2870, + "src": "769:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "id": 2880, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2872, + "src": "773:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "769:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "757:17:15" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2884, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2878, + "src": "787:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 2885, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2870, + "src": "792:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "787:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2883, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "780:6:15", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "780:14:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2888, + "nodeType": "ExpressionStatement", + "src": "780:14:15" + }, + { + "expression": { + "argumentTypes": null, + "id": 2889, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2878, + "src": "807:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2876, + "id": 2890, + "nodeType": "Return", + "src": "800:8:15" + } + ] + }, + "documentation": null, + "id": 2892, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "add", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2873, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2870, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "693:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "693:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2872, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "704:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2871, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "704:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "692:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2875, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "742:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2874, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "742:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "741:9:15" + }, + "scope": 2893, + "src": "680:133:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 2894, + "src": "117:698:15" + } + ], + "src": "0:816:15" + }, + "legacyAST": { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "exportedSymbols": { + "SafeMath": [ + 2893 + ] + }, + "id": 2894, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2800, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:15" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "library", + "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", + "fullyImplemented": true, + "id": 2893, + "linearizedBaseContracts": [ + 2893 + ], + "name": "SafeMath", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 2829, + "nodeType": "Block", + "src": "209:76:15", + "statements": [ + { + "assignments": [ + 2810 + ], + "declarations": [ + { + "constant": false, + "id": 2810, + "name": "c", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "215:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2809, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "215:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2814, + "initialValue": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2813, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2811, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2802, + "src": "227:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "argumentTypes": null, + "id": 2812, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "231:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "227:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "215:17:15" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2816, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2802, + "src": "245:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "250:1:15", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "245:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2819, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "255:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "argumentTypes": null, + "id": 2820, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2802, + "src": "259:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "255:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2822, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "264:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "255:10:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "245:20:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2815, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "238:6:15", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "238:28:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2826, + "nodeType": "ExpressionStatement", + "src": "238:28:15" + }, + { + "expression": { + "argumentTypes": null, + "id": 2827, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "279:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2808, + "id": 2828, + "nodeType": "Return", + "src": "272:8:15" + } + ] + }, + "documentation": null, + "id": 2830, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "mul", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2802, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "151:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2801, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "151:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2804, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "162:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "162:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "150:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2808, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2807, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2830, + "src": "200:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2806, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "200:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "199:9:15" + }, + "scope": 2893, + "src": "138:147:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 2847, + "nodeType": "Block", + "src": "360:198:15", + "statements": [ + { + "assignments": [ + 2840 + ], + "declarations": [ + { + "constant": false, + "id": 2840, + "name": "c", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "440:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2839, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "440:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2844, + "initialValue": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2843, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2841, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2832, + "src": "452:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "argumentTypes": null, + "id": 2842, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2834, + "src": "456:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "452:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "440:17:15" + }, + { + "expression": { + "argumentTypes": null, + "id": 2845, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "552:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2838, + "id": 2846, + "nodeType": "Return", + "src": "545:8:15" + } + ] + }, + "documentation": null, + "id": 2848, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "div", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2835, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2832, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "302:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "302:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2834, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "313:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2833, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "313:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "301:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2838, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2837, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2848, + "src": "351:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2836, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "351:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "350:9:15" + }, + "scope": 2893, + "src": "289:269:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 2867, + "nodeType": "Block", + "src": "633:43:15", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2858, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2852, + "src": "646:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "id": 2859, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2850, + "src": "651:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "646:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2857, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "639:6:15", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "639:14:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2862, + "nodeType": "ExpressionStatement", + "src": "639:14:15" + }, + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2863, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2850, + "src": "666:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "argumentTypes": null, + "id": 2864, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2852, + "src": "670:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "666:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2856, + "id": 2866, + "nodeType": "Return", + "src": "659:12:15" + } + ] + }, + "documentation": null, + "id": 2868, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "sub", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2853, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2850, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2868, + "src": "575:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2849, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "575:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2852, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2868, + "src": "586:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2851, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "586:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "574:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2855, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2868, + "src": "624:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "624:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "623:9:15" + }, + "scope": 2893, + "src": "562:114:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 2891, + "nodeType": "Block", + "src": "751:62:15", + "statements": [ + { + "assignments": [ + 2878 + ], + "declarations": [ + { + "constant": false, + "id": 2878, + "name": "c", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "757:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2877, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "757:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2882, + "initialValue": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2879, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2870, + "src": "769:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "id": 2880, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2872, + "src": "773:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "769:5:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "757:17:15" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2884, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2878, + "src": "787:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 2885, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2870, + "src": "792:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "787:6:15", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2883, + "name": "assert", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3333, + "src": "780:6:15", + "typeDescriptions": { + "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "780:14:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2888, + "nodeType": "ExpressionStatement", + "src": "780:14:15" + }, + { + "expression": { + "argumentTypes": null, + "id": 2889, + "name": "c", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2878, + "src": "807:1:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 2876, + "id": 2890, + "nodeType": "Return", + "src": "800:8:15" + } + ] + }, + "documentation": null, + "id": 2892, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "add", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2873, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2870, + "name": "a", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "693:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2869, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "693:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2872, + "name": "b", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "704:9:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2871, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "704:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "692:22:15" + }, + "payable": false, + "returnParameters": { + "id": 2876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2875, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2892, + "src": "742:7:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2874, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "742:7:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "741:9:15" + }, + "scope": 2893, + "src": "680:133:15", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 2894, + "src": "117:698:15" + } + ], + "src": "0:816:15" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.042Z" +} \ No newline at end of file diff --git a/build/contracts/Sales.json b/build/contracts/Sales.json index c307373..df027c6 100644 --- a/build/contracts/Sales.json +++ b/build/contracts/Sales.json @@ -1 +1,5296 @@ -{"contractName":"Sales","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_price","type":"uint256"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveSale","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_price","type":"uint256"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"uint256"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_buyer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userBoughtVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061137f83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061127b806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b5061012661083b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d610861565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610886565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c7565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e2e565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f83565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106f557805182526020820191506020810190506020830392506106d0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006107659190611162565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107fc5780820151818401526020810190506107e1565b50505050905090810190601f1680156108295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b60208310151561090257805182526020820191506020810190506020830392506108dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561096b5780518252602082019150602081019050602083039250610946565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b495750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610adf57600080fd5b505af1158015610af3573d6000803e3d6000fd5b505050506040513d6020811015610b0957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b5457600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b602083101515610bed5780518252602082019150602081019050602083039250610bc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610c565780518252602082019150602081019050602083039250610c31565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610cdf9291906111aa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610d84578082015181840152602081019050610d69565b50505050905090810190601f168015610db15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610dea578082015181840152602081019050610dcf565b50505050905090810190601f168015610e175780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e8957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ec557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156110035780518252602082019150602081019050602083039250610fde565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561106c5780518252602082019150602081019050602083039250611047565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061118857506111a7565b601f0160209004906000526020600020908101906111a6919061122a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111eb57805160ff1916838001178555611219565b82800160010185558215611219579182015b828111156112185782518255916020019190600101906111fd565b5b509050611226919061122a565b5090565b61124c91905b80821115611248576000816000905550600101611230565b5090565b905600a165627a7a72305820450d89f5e64013e9b23ed0bb511500af9595a052e09f299014802aae8bbcbb5a0029"} \ No newline at end of file +{ + "contractName": "Sales", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "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": [ + { + "name": "_registry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_buyer", + "type": "address" + }, + { + "indexed": false, + "name": "_videoId", + "type": "string" + }, + { + "indexed": false, + "name": "_price", + "type": "uint256" + }, + { + "indexed": false, + "name": "_ipfsData", + "type": "string" + } + ], + "name": "LogCreateSale", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_buyer", + "type": "address" + }, + { + "indexed": false, + "name": "_videoId", + "type": "string" + } + ], + "name": "LogRemoveSale", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_buyer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + }, + { + "name": "_price", + "type": "uint256" + }, + { + "name": "_ipfsData", + "type": "string" + } + ], + "name": "create", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_buyer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "remove", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_buyer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "get", + "outputs": [ + { + "name": "", + "type": "uint256" + }, + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_buyer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "userBoughtVideo", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405160208061137f83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061127b806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b5061012661083b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d610861565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610886565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c7565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e2e565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f83565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106f557805182526020820191506020810190506020830392506106d0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006107659190611162565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107fc5780820151818401526020810190506107e1565b50505050905090810190601f1680156108295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b60208310151561090257805182526020820191506020810190506020830392506108dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561096b5780518252602082019150602081019050602083039250610946565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b495750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610adf57600080fd5b505af1158015610af3573d6000803e3d6000fd5b505050506040513d6020811015610b0957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b5457600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b602083101515610bed5780518252602082019150602081019050602083039250610bc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610c565780518252602082019150602081019050602083039250610c31565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610cdf9291906111aa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610d84578082015181840152602081019050610d69565b50505050905090810190601f168015610db15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610dea578082015181840152602081019050610dcf565b50505050905090810190601f168015610e175780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e8957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ec557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156110035780518252602082019150602081019050602083039250610fde565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561106c5780518252602082019150602081019050602083039250611047565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061118857506111a7565b601f0160209004906000526020600020908101906111a6919061122a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111eb57805160ff1916838001178555611219565b82800160010185558215611219579182015b828111156112185782518255916020019190600101906111fd565b5b509050611226919061122a565b5090565b61124c91905b80821115611248576000816000905550600101611230565b5090565b905600a165627a7a723058207afbae843596e7dcf8adbc01a89141eee7b68ea378ab567bb5731c443d08c5e80029", + "deployedBytecode": "0x608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc8146100885780637b103999146101115780638da5cb5b14610168578063abebf126146101bf578063e8e459e014610260578063f2fde38b14610339578063fc2525ab1461037c575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610485565b005b34801561011d57600080fd5b5061012661083b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561017457600080fd5b5061017d610861565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101cb57600080fd5b50610246600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610886565b604051808215151515815260200191505060405180910390f35b34801561026c57600080fd5b50610337600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506109c7565b005b34801561034557600080fd5b5061037a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e2e565b005b34801561038857600080fd5b50610403600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f83565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106075750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059d57600080fd5b505af11580156105b1573d6000803e3d6000fd5b505050506040513d60208110156105c757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561061257600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b60208310151561068c5780518252602082019150602081019050602083039250610667565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106f557805182526020820191506020810190506020830392506106d0565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600090556002820160006107659190611162565b50507f83652eb81b824d0e5d35726dc1adb19408af592acb527de2994fa5a4d2d4f8808282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107fc5780820151818401526020810190506107e1565b50505050905090810190601f1680156108295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b60208310151561090257805182526020820191506020810190506020830392506108dd565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561096b5780518252602082019150602081019050602083039250610946565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610b495750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53746f7265000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610adf57600080fd5b505af1158015610af3573d6000803e3d6000fd5b505050506040513d6020811015610b0957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610b5457600080fd5b60606040519081016040528060011515815260200183815260200182815250600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b602083101515610bed5780518252602082019150602081019050602083039250610bc8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610c565780518252602082019150602081019050602083039250610c31565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff021916908315150217905550602082015181600101556040820151816002019080519060200190610cdf9291906111aa565b509050507f038378601c4d12a51dc5d62e0763a5950eae787276525db73d68924a3bd6f8aa84848484604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610d84578082015181840152602081019050610d69565b50505050905090810190601f168015610db15780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610dea578082015181840152602081019050610dcf565b50505050905090810190601f168015610e175780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e8957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ec557600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156110035780518252602082019150602081019050602083039250610fde565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561106c5780518252602082019150602081019050602083039250611047565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050806001015481600201808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f1061118857506111a7565b601f0160209004906000526020600020908101906111a6919061122a565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111eb57805160ff1916838001178555611219565b82800160010185558215611219579182015b828111156112185782518255916020019190600101906111fd565b5b509050611226919061122a565b5090565b61124c91905b80821115611248576000816000905550600101611230565b5090565b905600a165627a7a723058207afbae843596e7dcf8adbc01a89141eee7b68ea378ab567bb5731c443d08c5e80029", + "sourceMap": "168:2360:7:-;;;748:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;748:104:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;805:10:7;797:5;;:18;;;;;;;;;;;;;;;;;;836:9;825:8;;:20;;;;;;;;;;;;;;;;;;748:104;168:2360;;;;;;", + "deployedSourceMap": "168:2360:7:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1716:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1716:196:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;201:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;201:24:7;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;2351:175:7;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2351:175:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1293:293;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1293:293:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;2091:254:7;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2091:254:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2091:254:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1716:196;668:5;;;;;;;;;;;654:19;;:10;:19;;;653:70;;;;693:8;;;;;;;;;;;:20;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;693:29:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;693:29:7;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;693:29:7;;;;;;;;;;;;;;;;679:43;;:10;:43;;;653:70;645:79;;;;;;;;1806:6;:14;1813:6;1806:14;;;;;;;;;;;;;;;:53;1848:8;1831:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1831:26:7;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1831:26:7;;;1821:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1821:37:7;;;;;;;;;;;;;;;;1806:53;;;;;;;;;;;;;;;;;;1799:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;1874:31;1888:6;1896:8;1874:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1874:31:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1716:196;;:::o;201:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;2351:175:7:-;2429:4;2452:6;:14;2459:6;2452:14;;;;;;;;;;;;;;;:53;2494:8;2477:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2477:26:7;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2477:26:7;;;2467:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2467:37:7;;;;;;;;;;;;;;;;2452:53;;;;;;;;;;;;;;;;;:67;;;;;;;;;;;;2445:74;;2351:175;;;;:::o;1293:293::-;668:5;;;;;;;;;;;654:19;;:10;:19;;;653:70;;;;693:8;;;;;;;;;;;:20;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;693:29:7;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;693:29:7;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;693:29:7;;;;;;;;;;;;;;;;679:43;;:10;:43;;;653:70;645:79;;;;;;;;1485:29;;;;;;;;;1490:4;1485:29;;;;;;1496:6;1485:29;;;;1504:9;1485:29;;;1429:6;:14;1436:6;1429:14;;;;;;;;;;;;;;;:53;1471:8;1454:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1454:26:7;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1454:26:7;;;1444:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1444:37:7;;;;;;;;;;;;;;;;1429:53;;;;;;;;;;;;;;;;;:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;1529:50;1543:6;1551:8;1561:6;1569:9;1529:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1529:50:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1529:50:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1293:293;;;;:::o;827:169:16:-;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;2091:254:7:-;2158:4;2164:6;2182:18;2203:6;:14;2210:6;2203:14;;;;;;;;;;;;;;;:53;2245:8;2228:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2228:26:7;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2228:26:7;;;2218:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2218:37:7;;;;;;;;;;;;;;;;2203:53;;;;;;;;;;;;;;;;;2182:74;;2287:5;:12;;;2313:5;:15;;2266:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2091:254;;;;;;:::o;168:2360::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Registry.sol\";\n\ncontract Sales is Ownable {\n\n Registry public registry;\n\n struct Data {\n bool _isRegistered;\n uint _price;\n string _ipfsData;\n }\n\n // mapping from user addrsses and video ids to booleans\n mapping (address=> mapping (bytes32 => Data)) private _sales;\n\n event LogCreateSale(address _buyer, string _videoId, uint _price, string _ipfsData);\n event LogRemoveSale(address _buyer, string _videoId);\n\n modifier onlyOwnerOrStore() {\n require((msg.sender == owner) || (msg.sender == registry.getContract(\"Store\")));\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n /**\n * @dev registers a sale of a video\n * Does not do any payments - this call only registers the sale\n * Only the Store contract (as well as the owner) can register a sale\n * @param _videoId the id of the video\n * @param _buyer the buyer of the video (an ethereum address)\n * @param _price the price that was paid for the video\n * @param _ipfsData a reference to further data that can be found on ipfs\n */\n function create(address _buyer, string _videoId, uint _price, string _ipfsData)\n public \n onlyOwnerOrStore \n {\n _sales[_buyer][keccak256(abi.encodePacked(_videoId))] = Data(true, _price, _ipfsData);\n emit LogCreateSale(_buyer, _videoId, _price, _ipfsData);\n }\n\n /**\n * @dev Remove the sale from the registry\n * Only the Store contract or the owner can remove a sale\n */\n function remove(address _buyer, string _videoId) public onlyOwnerOrStore {\n delete _sales[_buyer][keccak256(abi.encodePacked(_videoId))];\n emit LogRemoveSale(_buyer, _videoId);\n }\n\n /**\n * @dev Get information about the sale from the registry\n * Only the Store contract or the owner can remove a sale\n * @return price and ipfsData\n */\n function get(address _buyer, string _videoId) public view returns(uint, string) {\n Data storage _data = _sales[_buyer][keccak256(abi.encodePacked(_videoId))];\n return (\n _data._price,\n _data._ipfsData\n );\n }\n\n function userBoughtVideo(address _buyer, string _videoId) public view returns(bool) {\n return _sales[_buyer][keccak256(abi.encodePacked(_videoId))]._isRegistered;\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", + "exportedSymbols": { + "Sales": [ + 1349 + ] + }, + "id": 1350, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1158, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:7" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 1159, + "nodeType": "ImportDirective", + "scope": 1350, + "sourceUnit": 2950, + "src": "26:59:7", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 1160, + "nodeType": "ImportDirective", + "scope": 1350, + "sourceUnit": 2894, + "src": "86:55:7", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1161, + "nodeType": "ImportDirective", + "scope": 1350, + "sourceUnit": 1157, + "src": "142:24:7", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1162, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "186:7:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1163, + "nodeType": "InheritanceSpecifier", + "src": "186:7:7" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 1349, + "linearizedBaseContracts": [ + 1349, + 2949 + ], + "name": "Sales", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1165, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 1349, + "src": "201:24:7", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1164, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "201:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "canonicalName": "Sales.Data", + "id": 1172, + "members": [ + { + "constant": false, + "id": 1167, + "name": "_isRegistered", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "254:18:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1166, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "254:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1169, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "282:11:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1168, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "282:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1171, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "303:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1170, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "303:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Data", + "nodeType": "StructDefinition", + "scope": 1349, + "src": "232:94:7", + "visibility": "public" + }, + { + "constant": false, + "id": 1178, + "name": "_sales", + "nodeType": "VariableDeclaration", + "scope": 1349, + "src": "392:60:7", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" + }, + "typeName": { + "id": 1177, + "keyType": { + "id": 1173, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "401:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "392:45:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" + }, + "valueType": { + "id": 1176, + "keyType": { + "id": 1174, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "420:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "411:25:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data)" + }, + "valueType": { + "contractScope": null, + "id": 1175, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1172, + "src": "431:4:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 1188, + "name": "LogCreateSale", + "nodeType": "EventDefinition", + "parameters": { + "id": 1187, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1180, + "indexed": false, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "479:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "479:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1182, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "495:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1181, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "495:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1184, + "indexed": false, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "512:11:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1183, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "512:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1186, + "indexed": false, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "525:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1185, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "525:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "478:64:7" + }, + "src": "459:84:7" + }, + { + "anonymous": false, + "documentation": null, + "id": 1194, + "name": "LogRemoveSale", + "nodeType": "EventDefinition", + "parameters": { + "id": 1193, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1190, + "indexed": false, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1194, + "src": "568:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1189, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "568:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1192, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1194, + "src": "584:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1191, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "584:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "567:33:7" + }, + "src": "548:53:7" + }, + { + "body": { + "id": 1214, + "nodeType": "Block", + "src": "635:107:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1197, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "654:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "654:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 1199, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "668:5:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "654:19:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1201, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "653:21:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1202, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "679:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "679:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "53746f7265", + "id": 1206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "714:7:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", + "typeString": "literal_string \"Store\"" + }, + "value": "Store" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", + "typeString": "literal_string \"Store\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1204, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1165, + "src": "693:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "693:20:7", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "693:29:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "679:43:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1209, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "678:45:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "653:70:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1196, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "645:7:7", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1211, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "645:79:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1212, + "nodeType": "ExpressionStatement", + "src": "645:79:7" + }, + { + "id": 1213, + "nodeType": "PlaceholderStatement", + "src": "734:1:7" + } + ] + }, + "documentation": null, + "id": 1215, + "name": "onlyOwnerOrStore", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 1195, + "nodeType": "ParameterList", + "parameters": [], + "src": "632:2:7" + }, + "src": "607:135:7", + "visibility": "internal" + }, + { + "body": { + "id": 1229, + "nodeType": "Block", + "src": "787:65:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1220, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "797:5:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1221, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "805:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1222, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "805:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "797:18:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1224, + "nodeType": "ExpressionStatement", + "src": "797:18:7" + }, + { + "expression": { + "argumentTypes": null, + "id": 1227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1225, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1165, + "src": "825:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1226, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1217, + "src": "836:9:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "825:20:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1228, + "nodeType": "ExpressionStatement", + "src": "825:20:7" + } + ] + }, + "documentation": null, + "id": 1230, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1218, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1217, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 1230, + "src": "760:18:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1216, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "760:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "759:20:7" + }, + "payable": false, + "returnParameters": { + "id": 1219, + "nodeType": "ParameterList", + "parameters": [], + "src": "787:0:7" + }, + "scope": 1349, + "src": "748:104:7", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1267, + "nodeType": "Block", + "src": "1419:167:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1243, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "1429:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1251, + "indexExpression": { + "argumentTypes": null, + "id": 1244, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "1436:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1429:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1252, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1248, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1234, + "src": "1471:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1246, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1454:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1454:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1454:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1245, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1444:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1444:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1429:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1490:4:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "argumentTypes": null, + "id": 1255, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1236, + "src": "1496:6:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1256, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1238, + "src": "1504:9:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1253, + "name": "Data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1172, + "src": "1485:4:7", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Data_$1172_storage_ptr_$", + "typeString": "type(struct Sales.Data storage pointer)" + } + }, + "id": 1257, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1485:29:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_memory", + "typeString": "struct Sales.Data memory" + } + }, + "src": "1429:85:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "id": 1259, + "nodeType": "ExpressionStatement", + "src": "1429:85:7" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1261, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "1543:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1262, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1234, + "src": "1551:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1263, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1236, + "src": "1561:6:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1264, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1238, + "src": "1569:9:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1260, + "name": "LogCreateSale", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1188, + "src": "1529:13:7", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,uint256,string memory)" + } + }, + "id": 1265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1529:50:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1266, + "nodeType": "EmitStatement", + "src": "1524:55:7" + } + ] + }, + "documentation": "@dev registers a sale of a video\nDoes not do any payments - this call only registers the sale\nOnly the Store contract (as well as the owner) can register a sale\n@param _videoId the id of the video\n@param _buyer the buyer of the video (an ethereum address)\n@param _price the price that was paid for the video\n@param _ipfsData a reference to further data that can be found on ipfs", + "id": 1268, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1241, + "modifierName": { + "argumentTypes": null, + "id": 1240, + "name": "onlyOwnerOrStore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1215, + "src": "1397:16:7", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1397:16:7" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1239, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1232, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1309:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1309:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1234, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1325:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1233, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1325:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1236, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1342:11:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1235, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1342:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1238, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1355:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1237, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1355:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1308:64:7" + }, + "payable": false, + "returnParameters": { + "id": 1242, + "nodeType": "ParameterList", + "parameters": [], + "src": "1419:0:7" + }, + "scope": 1349, + "src": "1293:293:7", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1294, + "nodeType": "Block", + "src": "1789:123:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1799:60:7", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1277, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "1806:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1279, + "indexExpression": { + "argumentTypes": null, + "id": 1278, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1270, + "src": "1813:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1806:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1286, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1283, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1272, + "src": "1848:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1281, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1831:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1831:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1831:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1280, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1821:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1821:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1806:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1288, + "nodeType": "ExpressionStatement", + "src": "1799:60:7" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1290, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1270, + "src": "1888:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1291, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1272, + "src": "1896:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1289, + "name": "LogRemoveSale", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1194, + "src": "1874:13:7", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 1292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1874:31:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1293, + "nodeType": "EmitStatement", + "src": "1869:36:7" + } + ] + }, + "documentation": "@dev Remove the sale from the registry\nOnly the Store contract or the owner can remove a sale", + "id": 1295, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1275, + "modifierName": { + "argumentTypes": null, + "id": 1274, + "name": "onlyOwnerOrStore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1215, + "src": "1772:16:7", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1772:16:7" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1273, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1270, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1295, + "src": "1732:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1732:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1272, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1295, + "src": "1748:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1271, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1748:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1731:33:7" + }, + "payable": false, + "returnParameters": { + "id": 1276, + "nodeType": "ParameterList", + "parameters": [], + "src": "1789:0:7" + }, + "scope": 1349, + "src": "1716:196:7", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1325, + "nodeType": "Block", + "src": "2172:173:7", + "statements": [ + { + "assignments": [ + 1307 + ], + "declarations": [ + { + "constant": false, + "id": 1307, + "name": "_data", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2182:18:7", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data" + }, + "typeName": { + "contractScope": null, + "id": 1306, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1172, + "src": "2182:4:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1318, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1308, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "2203:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1310, + "indexExpression": { + "argumentTypes": null, + "id": 1309, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1297, + "src": "2210:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2203:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1317, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1314, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1299, + "src": "2245:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1312, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2228:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2228:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2228:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1311, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2218:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2218:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2203:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2182:74:7" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1319, + "name": "_data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1307, + "src": "2287:5:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data storage pointer" + } + }, + "id": 1320, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_price", + "nodeType": "MemberAccess", + "referencedDeclaration": 1169, + "src": "2287:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1321, + "name": "_data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1307, + "src": "2313:5:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data storage pointer" + } + }, + "id": 1322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 1171, + "src": "2313:15:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "id": 1323, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2273:65:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_string_storage_$", + "typeString": "tuple(uint256,string storage ref)" + } + }, + "functionReturnParameters": 1305, + "id": 1324, + "nodeType": "Return", + "src": "2266:72:7" + } + ] + }, + "documentation": "@dev Get information about the sale from the registry\nOnly the Store contract or the owner can remove a sale\n@return price and ipfsData", + "id": 1326, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1297, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2104:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1296, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2104:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1299, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2120:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1298, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2120:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2103:33:7" + }, + "payable": false, + "returnParameters": { + "id": 1305, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1302, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2158:4:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1301, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2158:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1304, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2164:6:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1303, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2164:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2157:14:7" + }, + "scope": 1349, + "src": "2091:254:7", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1347, + "nodeType": "Block", + "src": "2435:91:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1335, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "2452:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1337, + "indexExpression": { + "argumentTypes": null, + "id": 1336, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1328, + "src": "2459:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2452:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1344, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1341, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1330, + "src": "2494:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1339, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2477:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2477:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2477:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1338, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2467:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2467:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2452:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "id": 1345, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_isRegistered", + "nodeType": "MemberAccess", + "referencedDeclaration": 1167, + "src": "2452:67:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1334, + "id": 1346, + "nodeType": "Return", + "src": "2445:74:7" + } + ] + }, + "documentation": null, + "id": 1348, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userBoughtVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1331, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1328, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1348, + "src": "2376:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1327, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2376:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1330, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1348, + "src": "2392:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1329, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2392:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2375:33:7" + }, + "payable": false, + "returnParameters": { + "id": 1334, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1333, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1348, + "src": "2429:4:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1332, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2429:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2428:6:7" + }, + "scope": 1349, + "src": "2351:175:7", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1350, + "src": "168:2360:7" + } + ], + "src": "0:2529:7" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", + "exportedSymbols": { + "Sales": [ + 1349 + ] + }, + "id": 1350, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1158, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:7" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 1159, + "nodeType": "ImportDirective", + "scope": 1350, + "sourceUnit": 2950, + "src": "26:59:7", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 1160, + "nodeType": "ImportDirective", + "scope": 1350, + "sourceUnit": 2894, + "src": "86:55:7", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1161, + "nodeType": "ImportDirective", + "scope": 1350, + "sourceUnit": 1157, + "src": "142:24:7", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1162, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "186:7:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1163, + "nodeType": "InheritanceSpecifier", + "src": "186:7:7" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 1349, + "linearizedBaseContracts": [ + 1349, + 2949 + ], + "name": "Sales", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1165, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 1349, + "src": "201:24:7", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1164, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "201:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "canonicalName": "Sales.Data", + "id": 1172, + "members": [ + { + "constant": false, + "id": 1167, + "name": "_isRegistered", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "254:18:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1166, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "254:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1169, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "282:11:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1168, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "282:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1171, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1172, + "src": "303:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1170, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "303:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Data", + "nodeType": "StructDefinition", + "scope": 1349, + "src": "232:94:7", + "visibility": "public" + }, + { + "constant": false, + "id": 1178, + "name": "_sales", + "nodeType": "VariableDeclaration", + "scope": 1349, + "src": "392:60:7", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" + }, + "typeName": { + "id": 1177, + "keyType": { + "id": 1173, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "401:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "392:45:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" + }, + "valueType": { + "id": 1176, + "keyType": { + "id": 1174, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "420:7:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "411:25:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data)" + }, + "valueType": { + "contractScope": null, + "id": 1175, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1172, + "src": "431:4:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 1188, + "name": "LogCreateSale", + "nodeType": "EventDefinition", + "parameters": { + "id": 1187, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1180, + "indexed": false, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "479:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "479:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1182, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "495:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1181, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "495:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1184, + "indexed": false, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "512:11:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1183, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "512:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1186, + "indexed": false, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1188, + "src": "525:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1185, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "525:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "478:64:7" + }, + "src": "459:84:7" + }, + { + "anonymous": false, + "documentation": null, + "id": 1194, + "name": "LogRemoveSale", + "nodeType": "EventDefinition", + "parameters": { + "id": 1193, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1190, + "indexed": false, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1194, + "src": "568:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1189, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "568:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1192, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1194, + "src": "584:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1191, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "584:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "567:33:7" + }, + "src": "548:53:7" + }, + { + "body": { + "id": 1214, + "nodeType": "Block", + "src": "635:107:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1197, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "654:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "654:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 1199, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "668:5:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "654:19:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1201, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "653:21:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1202, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "679:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "679:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "53746f7265", + "id": 1206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "714:7:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", + "typeString": "literal_string \"Store\"" + }, + "value": "Store" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", + "typeString": "literal_string \"Store\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1204, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1165, + "src": "693:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "693:20:7", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "693:29:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "679:43:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1209, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "678:45:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "653:70:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1196, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "645:7:7", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1211, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "645:79:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1212, + "nodeType": "ExpressionStatement", + "src": "645:79:7" + }, + { + "id": 1213, + "nodeType": "PlaceholderStatement", + "src": "734:1:7" + } + ] + }, + "documentation": null, + "id": 1215, + "name": "onlyOwnerOrStore", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 1195, + "nodeType": "ParameterList", + "parameters": [], + "src": "632:2:7" + }, + "src": "607:135:7", + "visibility": "internal" + }, + { + "body": { + "id": 1229, + "nodeType": "Block", + "src": "787:65:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1220, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "797:5:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1221, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "805:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1222, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "805:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "797:18:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1224, + "nodeType": "ExpressionStatement", + "src": "797:18:7" + }, + { + "expression": { + "argumentTypes": null, + "id": 1227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1225, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1165, + "src": "825:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1226, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1217, + "src": "836:9:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "825:20:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1228, + "nodeType": "ExpressionStatement", + "src": "825:20:7" + } + ] + }, + "documentation": null, + "id": 1230, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1218, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1217, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 1230, + "src": "760:18:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1216, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "760:8:7", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "759:20:7" + }, + "payable": false, + "returnParameters": { + "id": 1219, + "nodeType": "ParameterList", + "parameters": [], + "src": "787:0:7" + }, + "scope": 1349, + "src": "748:104:7", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1267, + "nodeType": "Block", + "src": "1419:167:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1243, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "1429:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1251, + "indexExpression": { + "argumentTypes": null, + "id": 1244, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "1436:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1429:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1252, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1248, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1234, + "src": "1471:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1246, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1454:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1454:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1454:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1245, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1444:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1444:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1429:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1490:4:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "argumentTypes": null, + "id": 1255, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1236, + "src": "1496:6:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1256, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1238, + "src": "1504:9:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1253, + "name": "Data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1172, + "src": "1485:4:7", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Data_$1172_storage_ptr_$", + "typeString": "type(struct Sales.Data storage pointer)" + } + }, + "id": 1257, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1485:29:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_memory", + "typeString": "struct Sales.Data memory" + } + }, + "src": "1429:85:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "id": 1259, + "nodeType": "ExpressionStatement", + "src": "1429:85:7" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1261, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1232, + "src": "1543:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1262, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1234, + "src": "1551:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1263, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1236, + "src": "1561:6:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1264, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1238, + "src": "1569:9:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1260, + "name": "LogCreateSale", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1188, + "src": "1529:13:7", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,uint256,string memory)" + } + }, + "id": 1265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1529:50:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1266, + "nodeType": "EmitStatement", + "src": "1524:55:7" + } + ] + }, + "documentation": "@dev registers a sale of a video\nDoes not do any payments - this call only registers the sale\nOnly the Store contract (as well as the owner) can register a sale\n@param _videoId the id of the video\n@param _buyer the buyer of the video (an ethereum address)\n@param _price the price that was paid for the video\n@param _ipfsData a reference to further data that can be found on ipfs", + "id": 1268, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1241, + "modifierName": { + "argumentTypes": null, + "id": 1240, + "name": "onlyOwnerOrStore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1215, + "src": "1397:16:7", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1397:16:7" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1239, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1232, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1309:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1309:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1234, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1325:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1233, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1325:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1236, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1342:11:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1235, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1342:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1238, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1268, + "src": "1355:16:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1237, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1355:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1308:64:7" + }, + "payable": false, + "returnParameters": { + "id": 1242, + "nodeType": "ParameterList", + "parameters": [], + "src": "1419:0:7" + }, + "scope": 1349, + "src": "1293:293:7", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1294, + "nodeType": "Block", + "src": "1789:123:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1799:60:7", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1277, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "1806:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1279, + "indexExpression": { + "argumentTypes": null, + "id": 1278, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1270, + "src": "1813:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1806:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1286, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1283, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1272, + "src": "1848:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1281, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1831:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1831:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1831:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1280, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1821:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1821:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1806:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1288, + "nodeType": "ExpressionStatement", + "src": "1799:60:7" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1290, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1270, + "src": "1888:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1291, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1272, + "src": "1896:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1289, + "name": "LogRemoveSale", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1194, + "src": "1874:13:7", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 1292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1874:31:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1293, + "nodeType": "EmitStatement", + "src": "1869:36:7" + } + ] + }, + "documentation": "@dev Remove the sale from the registry\nOnly the Store contract or the owner can remove a sale", + "id": 1295, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1275, + "modifierName": { + "argumentTypes": null, + "id": 1274, + "name": "onlyOwnerOrStore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1215, + "src": "1772:16:7", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1772:16:7" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1273, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1270, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1295, + "src": "1732:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1732:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1272, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1295, + "src": "1748:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1271, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1748:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1731:33:7" + }, + "payable": false, + "returnParameters": { + "id": 1276, + "nodeType": "ParameterList", + "parameters": [], + "src": "1789:0:7" + }, + "scope": 1349, + "src": "1716:196:7", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1325, + "nodeType": "Block", + "src": "2172:173:7", + "statements": [ + { + "assignments": [ + 1307 + ], + "declarations": [ + { + "constant": false, + "id": 1307, + "name": "_data", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2182:18:7", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data" + }, + "typeName": { + "contractScope": null, + "id": 1306, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1172, + "src": "2182:4:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1318, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1308, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "2203:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1310, + "indexExpression": { + "argumentTypes": null, + "id": 1309, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1297, + "src": "2210:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2203:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1317, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1314, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1299, + "src": "2245:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1312, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2228:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2228:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2228:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1311, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2218:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2218:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2203:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2182:74:7" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1319, + "name": "_data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1307, + "src": "2287:5:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data storage pointer" + } + }, + "id": 1320, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_price", + "nodeType": "MemberAccess", + "referencedDeclaration": 1169, + "src": "2287:12:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1321, + "name": "_data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1307, + "src": "2313:5:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", + "typeString": "struct Sales.Data storage pointer" + } + }, + "id": 1322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 1171, + "src": "2313:15:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "id": 1323, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2273:65:7", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_string_storage_$", + "typeString": "tuple(uint256,string storage ref)" + } + }, + "functionReturnParameters": 1305, + "id": 1324, + "nodeType": "Return", + "src": "2266:72:7" + } + ] + }, + "documentation": "@dev Get information about the sale from the registry\nOnly the Store contract or the owner can remove a sale\n@return price and ipfsData", + "id": 1326, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1297, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2104:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1296, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2104:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1299, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2120:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1298, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2120:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2103:33:7" + }, + "payable": false, + "returnParameters": { + "id": 1305, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1302, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2158:4:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1301, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2158:4:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1304, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1326, + "src": "2164:6:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1303, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2164:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2157:14:7" + }, + "scope": 1349, + "src": "2091:254:7", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1347, + "nodeType": "Block", + "src": "2435:91:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1335, + "name": "_sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1178, + "src": "2452:6:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data storage ref))" + } + }, + "id": 1337, + "indexExpression": { + "argumentTypes": null, + "id": 1336, + "name": "_buyer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1328, + "src": "2459:6:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2452:14:7", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", + "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" + } + }, + "id": 1344, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1341, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1330, + "src": "2494:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1339, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2477:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2477:16:7", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2477:26:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1338, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2467:9:7", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2467:37:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2452:53:7", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$1172_storage", + "typeString": "struct Sales.Data storage ref" + } + }, + "id": 1345, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_isRegistered", + "nodeType": "MemberAccess", + "referencedDeclaration": 1167, + "src": "2452:67:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1334, + "id": 1346, + "nodeType": "Return", + "src": "2445:74:7" + } + ] + }, + "documentation": null, + "id": 1348, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userBoughtVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1331, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1328, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1348, + "src": "2376:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1327, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2376:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1330, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1348, + "src": "2392:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1329, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2392:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2375:33:7" + }, + "payable": false, + "returnParameters": { + "id": 1334, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1333, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1348, + "src": "2429:4:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1332, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2429:4:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2428:6:7" + }, + "scope": 1349, + "src": "2351:175:7", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1350, + "src": "168:2360:7" + } + ], + "src": "0:2529:7" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.055Z" +} \ No newline at end of file diff --git a/build/contracts/SendEther.json b/build/contracts/SendEther.json index 8f37432..ec33c3f 100644 --- a/build/contracts/SendEther.json +++ b/build/contracts/SendEther.json @@ -1 +1,1271 @@ -{"contractName":"SendEther","abi":[{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"description","type":"string"}],"name":"LogSendEther","type":"event"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_description","type":"string"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50610272806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a723058201f286e16aae3f1b4e9533daa7c20efd923f429ccbe919394bbfb6aaf3a9283070029"} \ No newline at end of file +{ + "contractName": "SendEther", + "abi": [ + { + "payable": false, + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "from", + "type": "address" + }, + { + "indexed": false, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + }, + { + "indexed": false, + "name": "description", + "type": "string" + } + ], + "name": "LogSendEther", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_to", + "type": "address" + }, + { + "name": "_description", + "type": "string" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610272806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a72305820e8f41258ca1f39255c02ff297cf6853336b2ba1e1414344ae8298b7783823c3f0029", + "deployedBytecode": "0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a72305820e8f41258ca1f39255c02ff297cf6853336b2ba1e1414344ae8298b7783823c3f0029", + "sourceMap": "133:734:8:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;133:734:8;;;;;;;", + "deployedSourceMap": "133:734:8:-;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;133:734:8;378:8;;;652:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;727:4;744:3;:12;;:23;757:9;744:23;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;744:23:8;782:54;795:10;807:3;812:9;823:12;782:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;782:54:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;853:4;846:11;;652:212;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\n/**\n * @title SendEther\n * @dev A Contract that wraps the native transfer function and logs an event.\n */\n\ncontract SendEther {\n\n event LogSendEther(\n address from,\n address to,\n uint value,\n string description\n );\n\n // If someone accidentally sends ether to this contract, revert;\n function () public {\n revert();\n }\n\n /**\n * @dev Transfer ether to address _to, providing a description\n * The only difference with sending ETH directly is that the action is logged\n * @param _to recipient of the ETH\n * @param _description A description to log\n */\n function transfer(address _to, string _description) public payable returns(bool) {\n _to.transfer(msg.value);\n emit LogSendEther(msg.sender, _to, msg.value, _description);\n return true;\n }\n\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/SendEther.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/SendEther.sol", + "exportedSymbols": { + "SendEther": [ + 1397 + ] + }, + "id": 1398, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1351, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:8" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title SendEther\n@dev A Contract that wraps the native transfer function and logs an event.", + "fullyImplemented": true, + "id": 1397, + "linearizedBaseContracts": [ + 1397 + ], + "name": "SendEther", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 1361, + "name": "LogSendEther", + "nodeType": "EventDefinition", + "parameters": { + "id": 1360, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1353, + "indexed": false, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "187:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1352, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "187:7:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1355, + "indexed": false, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "209:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1354, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "209:7:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1357, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "229:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1356, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "229:4:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1359, + "indexed": false, + "name": "description", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "249:18:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1358, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "249:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "177:96:8" + }, + "src": "159:115:8" + }, + { + "body": { + "id": 1367, + "nodeType": "Block", + "src": "368:25:8", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1364, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3349, + 3350 + ], + "referencedDeclaration": 3349, + "src": "378:6:8", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "378:8:8", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1366, + "nodeType": "ExpressionStatement", + "src": "378:8:8" + } + ] + }, + "documentation": null, + "id": 1368, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1362, + "nodeType": "ParameterList", + "parameters": [], + "src": "358:2:8" + }, + "payable": false, + "returnParameters": { + "id": 1363, + "nodeType": "ParameterList", + "parameters": [], + "src": "368:0:8" + }, + "scope": 1397, + "src": "349:44:8", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1395, + "nodeType": "Block", + "src": "734:130:8", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1380, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "757:3:8", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "757:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1377, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1370, + "src": "744:3:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "744:12:8", + "typeDescriptions": { + "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 1382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "744:23:8", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1383, + "nodeType": "ExpressionStatement", + "src": "744:23:8" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1385, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "795:3:8", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "795:10:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1387, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1370, + "src": "807:3:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1388, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "812:3:8", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "812:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1390, + "name": "_description", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1372, + "src": "823:12:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1384, + "name": "LogSendEther", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1361, + "src": "782:12:8", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,string memory)" + } + }, + "id": 1391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "782:54:8", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1392, + "nodeType": "EmitStatement", + "src": "777:59:8" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "853:4:8", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1376, + "id": 1394, + "nodeType": "Return", + "src": "846:11:8" + } + ] + }, + "documentation": "@dev Transfer ether to address _to, providing a description\nThe only difference with sending ETH directly is that the action is logged\n@param _to recipient of the ETH\n@param _description A description to log", + "id": 1396, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1373, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1370, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "670:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1369, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "670:7:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1372, + "name": "_description", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "683:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1371, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "683:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "669:34:8" + }, + "payable": true, + "returnParameters": { + "id": 1376, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1375, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "727:4:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1374, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "727:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "726:6:8" + }, + "scope": 1397, + "src": "652:212:8", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1398, + "src": "133:734:8" + } + ], + "src": "0:868:8" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/SendEther.sol", + "exportedSymbols": { + "SendEther": [ + 1397 + ] + }, + "id": 1398, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1351, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:8" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title SendEther\n@dev A Contract that wraps the native transfer function and logs an event.", + "fullyImplemented": true, + "id": 1397, + "linearizedBaseContracts": [ + 1397 + ], + "name": "SendEther", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 1361, + "name": "LogSendEther", + "nodeType": "EventDefinition", + "parameters": { + "id": 1360, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1353, + "indexed": false, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "187:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1352, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "187:7:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1355, + "indexed": false, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "209:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1354, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "209:7:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1357, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "229:10:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1356, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "229:4:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1359, + "indexed": false, + "name": "description", + "nodeType": "VariableDeclaration", + "scope": 1361, + "src": "249:18:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1358, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "249:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "177:96:8" + }, + "src": "159:115:8" + }, + { + "body": { + "id": 1367, + "nodeType": "Block", + "src": "368:25:8", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1364, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3349, + 3350 + ], + "referencedDeclaration": 3349, + "src": "378:6:8", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "378:8:8", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1366, + "nodeType": "ExpressionStatement", + "src": "378:8:8" + } + ] + }, + "documentation": null, + "id": 1368, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1362, + "nodeType": "ParameterList", + "parameters": [], + "src": "358:2:8" + }, + "payable": false, + "returnParameters": { + "id": 1363, + "nodeType": "ParameterList", + "parameters": [], + "src": "368:0:8" + }, + "scope": 1397, + "src": "349:44:8", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1395, + "nodeType": "Block", + "src": "734:130:8", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1380, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "757:3:8", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "757:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1377, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1370, + "src": "744:3:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "744:12:8", + "typeDescriptions": { + "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256)" + } + }, + "id": 1382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "744:23:8", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1383, + "nodeType": "ExpressionStatement", + "src": "744:23:8" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1385, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "795:3:8", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "795:10:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1387, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1370, + "src": "807:3:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1388, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "812:3:8", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "812:9:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1390, + "name": "_description", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1372, + "src": "823:12:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1384, + "name": "LogSendEther", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1361, + "src": "782:12:8", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,address,uint256,string memory)" + } + }, + "id": 1391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "782:54:8", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1392, + "nodeType": "EmitStatement", + "src": "777:59:8" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "853:4:8", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1376, + "id": 1394, + "nodeType": "Return", + "src": "846:11:8" + } + ] + }, + "documentation": "@dev Transfer ether to address _to, providing a description\nThe only difference with sending ETH directly is that the action is logged\n@param _to recipient of the ETH\n@param _description A description to log", + "id": 1396, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1373, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1370, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "670:11:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1369, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "670:7:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1372, + "name": "_description", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "683:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1371, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "683:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "669:34:8" + }, + "payable": true, + "returnParameters": { + "id": 1376, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1375, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "727:4:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1374, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "727:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "726:6:8" + }, + "scope": 1397, + "src": "652:212:8", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1398, + "src": "133:734:8" + } + ], + "src": "0:868:8" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.041Z" +} \ No newline at end of file diff --git a/build/contracts/StandardToken.json b/build/contracts/StandardToken.json index 30102ca..b121e50 100644 --- a/build/contracts/StandardToken.json +++ b/build/contracts/StandardToken.json @@ -1 +1,6297 @@ -{"contractName":"StandardToken","abi":[{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"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":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50610f1f806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049d565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610789565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a63565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c39565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e35565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156104dc57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506105ad83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061064283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106988382610ebc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561089a576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092e565b6108ad8382610ebc90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa057600080fd5b610af282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8782600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610cca82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610eca57fe5b818303905092915050565b6000808284019050838110151515610ee957fe5b80915050929150505600a165627a7a72305820c54bdffae225221a3e5d945dd33e8dbd7031c29924d49fb58969d68b7b48f1ae0029"} \ No newline at end of file +{ + "contractName": "StandardToken", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "balance", + "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" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "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": false, + "inputs": [ + { + "name": "_from", + "type": "address" + }, + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + }, + { + "name": "_spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "remaining", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_addedValue", + "type": "uint256" + } + ], + "name": "increaseApproval", + "outputs": [ + { + "name": "success", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseApproval", + "outputs": [ + { + "name": "success", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610f1f806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049d565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610789565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a63565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c39565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e35565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156104dc57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506105ad83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061064283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106988382610ebc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561089a576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092e565b6108ad8382610ebc90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa057600080fd5b610af282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8782600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610cca82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610eca57fe5b818303905092915050565b6000808284019050838110151515610ee957fe5b80915050929150505600a165627a7a72305820c54bdffae225221a3e5d945dd33e8dbd7031c29924d49fb58969d68b7b48f1ae0029", + "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061049d565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610789565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1a565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a63565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c39565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e35565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156104dc57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506105ad83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061064283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106988382610ebc90919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561089a576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061092e565b6108ad8382610ebc90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610aa057600080fd5b610af282600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ebc90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8782600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610cca82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ed590919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610eca57fe5b818303905092915050565b6000808284019050838110151515610ee957fe5b80915050929150505600a165627a7a72305820c54bdffae225221a3e5d945dd33e8dbd7031c29924d49fb58969d68b7b48f1ae0029", + "sourceMap": "345:3095:20:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;345:3095:20;;;;;;;", + "deployedSourceMap": "345:3095:20:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1884:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1884:183:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;179:26:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;179:26:19;;;;;;;;;;;;;;;;;;;;;;;728:533:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;728:533:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3033:404;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3033:404:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;973:111:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;973:111:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;437:334;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:334:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2766:263:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2766:263:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2386:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2386:140:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1884:183;1951:4;1995:6;1963:7;:19;1971:10;1963:19;;;;;;;;;;;;;;;:29;1983:8;1963:29;;;;;;;;;;;;;;;:38;;;;2028:8;2007:38;;2016:10;2007:38;;;2038:6;2007:38;;;;;;;;;;;;;;;;;;2058:4;2051:11;;1884:183;;;;:::o;179:26:19:-;;;;:::o;728:533:20:-;810:4;855:18;845:1;830:17;;:3;:17;;;;822:26;;;;;;;;876:7;:14;884:5;876:14;;;;;;;;;;;;;;;:26;891:10;876:26;;;;;;;;;;;;;;;;855:47;;1074:27;1094:6;1074:8;:15;1083:5;1074:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;1056:8;:15;1065:5;1056:15;;;;;;;;;;;;;;;:45;;;;1123:25;1141:6;1123:8;:13;1132:3;1123:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;1107:8;:13;1116:3;1107:13;;;;;;;;;;;;;;;:41;;;;1183:22;1198:6;1183:10;:14;;:22;;;;:::i;:::-;1154:7;:14;1162:5;1154:14;;;;;;;;;;;;;;;:26;1169:10;1154:26;;;;;;;;;;;;;;;:51;;;;1227:3;1211:28;;1220:5;1211:28;;;1232:6;1211:28;;;;;;;;;;;;;;;;;;1252:4;1245:11;;728:533;;;;;;:::o;3033:404::-;3114:12;3134:13;3150:7;:19;3158:10;3150:19;;;;;;;;;;;;;;;:29;3170:8;3150:29;;;;;;;;;;;;;;;;3134:45;;3208:8;3189:16;:27;3185:164;;;3258:1;3226:7;:19;3234:10;3226:19;;;;;;;;;;;;;;;:29;3246:8;3226:29;;;;;;;;;;;;;;;:33;;;;3185:164;;;3312:30;3325:16;3312:8;:12;;:30;;;;:::i;:::-;3280:7;:19;3288:10;3280:19;;;;;;;;;;;;;;;:29;3300:8;3280:29;;;;;;;;;;;;;;;:62;;;;3185:164;3375:8;3354:61;;3363:10;3354:61;;;3385:7;:19;3393:10;3385:19;;;;;;;;;;;;;;;:29;3405:8;3385:29;;;;;;;;;;;;;;;;3354:61;;;;;;;;;;;;;;;;;;3428:4;3421:11;;3033:404;;;;;:::o;973:111:17:-;1033:15;1063:8;:16;1072:6;1063:16;;;;;;;;;;;;;;;;1056:23;;973:111;;;:::o;437:334::-;500:4;535:1;520:17;;:3;:17;;;;512:26;;;;;;;;631:32;656:6;631:8;:20;640:10;631:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;608:8;:20;617:10;608:20;;;;;;;;;;;;;;;:55;;;;685:25;703:6;685:8;:13;694:3;685:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;669:8;:13;678:3;669:13;;;;;;;;;;;;;;;:41;;;;737:3;716:33;;725:10;716:33;;;742:6;716:33;;;;;;;;;;;;;;;;;;762:4;755:11;;437:334;;;;:::o;2766:263:20:-;2842:12;2894:46;2928:11;2894:7;:19;2902:10;2894:19;;;;;;;;;;;;;;;:29;2914:8;2894:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;2862:7;:19;2870:10;2862:19;;;;;;;;;;;;;;;:29;2882:8;2862:29;;;;;;;;;;;;;;;:78;;;;2967:8;2946:61;;2955:10;2946:61;;;2977:7;:19;2985:10;2977:19;;;;;;;;;;;;;;;:29;2997:8;2977:29;;;;;;;;;;;;;;;;2946:61;;;;;;;;;;;;;;;;;;3020:4;3013:11;;2766:263;;;;:::o;2386:140::-;2464:17;2496:7;:15;2504:6;2496:15;;;;;;;;;;;;;;;:25;2512:8;2496:25;;;;;;;;;;;;;;;;2489:32;;2386:140;;;;:::o;562:114:15:-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;680:133::-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o", + "source": "pragma solidity ^0.4.11;\n\n\nimport './BasicToken.sol';\nimport './ERC20.sol';\n\n\n/**\n * @title Standard ERC20 token\n *\n * @dev Implementation of the basic standard token.\n * @dev https://github.com/ethereum/EIPs/issues/20\n * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol\n */\ncontract StandardToken is ERC20, BasicToken {\n\n mapping (address => mapping (address => uint256)) allowed;\n\n\n /**\n * @dev Transfer tokens from one address to another\n * @param _from address The address which you want to send tokens from\n * @param _to address The address which you want to transfer to\n * @param _value uint256 the amount of tokens to be transferred\n */\n function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {\n require(_to != address(0));\n\n uint256 _allowance = allowed[_from][msg.sender];\n\n // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met\n // require (_value <= _allowance);\n\n balances[_from] = balances[_from].sub(_value);\n balances[_to] = balances[_to].add(_value);\n allowed[_from][msg.sender] = _allowance.sub(_value);\n Transfer(_from, _to, _value);\n return true;\n }\n\n /**\n * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n *\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\n * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\n * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\n * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n * @param _spender The address which will spend the funds.\n * @param _value The amount of tokens to be spent.\n */\n function approve(address _spender, uint256 _value) public returns (bool) {\n allowed[msg.sender][_spender] = _value;\n Approval(msg.sender, _spender, _value);\n return true;\n }\n\n /**\n * @dev Function to check the amount of tokens that an owner allowed to a spender.\n * @param _owner address The address which owns the funds.\n * @param _spender address The address which will spend the funds.\n * @return A uint256 specifying the amount of tokens still available for the spender.\n */\n function allowance(address _owner, address _spender) public constant returns (uint256 remaining) {\n return allowed[_owner][_spender];\n }\n\n /**\n * approve should be called when allowed[_spender] == 0. To increment\n * allowed value is better to use this function to avoid 2 calls (and wait until\n * the first transaction is mined)\n * From MonolithDAO Token.sol\n */\n function increaseApproval (address _spender, uint _addedValue)\n returns (bool success) {\n allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);\n Approval(msg.sender, _spender, allowed[msg.sender][_spender]);\n return true;\n }\n\n function decreaseApproval (address _spender, uint _subtractedValue)\n returns (bool success) {\n uint oldValue = allowed[msg.sender][_spender];\n if (_subtractedValue > oldValue) {\n allowed[msg.sender][_spender] = 0;\n } else {\n allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);\n }\n Approval(msg.sender, _spender, allowed[msg.sender][_spender]);\n return true;\n }\n\n}\n", + "sourcePath": "zeppelin-solidity/contracts/token/StandardToken.sol", + "ast": { + "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", + "exportedSymbols": { + "StandardToken": [ + 3329 + ] + }, + "id": 3330, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3100, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:20" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", + "file": "./BasicToken.sol", + "id": 3101, + "nodeType": "ImportDirective", + "scope": 3330, + "sourceUnit": 3027, + "src": "27:26:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", + "file": "./ERC20.sol", + "id": 3102, + "nodeType": "ImportDirective", + "scope": 3330, + "sourceUnit": 3070, + "src": "54:21:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3103, + "name": "ERC20", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3069, + "src": "371:5:20", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20_$3069", + "typeString": "contract ERC20" + } + }, + "id": 3104, + "nodeType": "InheritanceSpecifier", + "src": "371:5:20" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3105, + "name": "BasicToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3026, + "src": "378:10:20", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BasicToken_$3026", + "typeString": "contract BasicToken" + } + }, + "id": 3106, + "nodeType": "InheritanceSpecifier", + "src": "378:10:20" + } + ], + "contractDependencies": [ + 3026, + 3069, + 3098 + ], + "contractKind": "contract", + "documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\n@dev https://github.com/ethereum/EIPs/issues/20\n@dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol", + "fullyImplemented": true, + "id": 3329, + "linearizedBaseContracts": [ + 3329, + 3026, + 3069, + 3098 + ], + "name": "StandardToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3112, + "name": "allowed", + "nodeType": "VariableDeclaration", + "scope": 3329, + "src": "394:57:20", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 3111, + "keyType": { + "id": 3107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "403:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "394:49:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 3110, + "keyType": { + "id": 3108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "423:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "414:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 3109, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "434:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 3182, + "nodeType": "Block", + "src": "816:445:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3124, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "830:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 3126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "845:1:20", + "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": 3125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "837:7:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 3127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "837:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "830:17:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3123, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "822:7:20", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "822:26:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3130, + "nodeType": "ExpressionStatement", + "src": "822:26:20" + }, + { + "assignments": [ + 3132 + ], + "declarations": [ + { + "constant": false, + "id": 3132, + "name": "_allowance", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "855:18:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3131, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "855:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 3139, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3133, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "876:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3135, + "indexExpression": { + "argumentTypes": null, + "id": 3134, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "884:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "876:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3138, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3136, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "891:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "891:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "876:26:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "855:47:20" + }, + { + "expression": { + "argumentTypes": null, + "id": 3149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3140, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1056:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3142, + "indexExpression": { + "argumentTypes": null, + "id": 3141, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1065:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1056:15:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3147, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1094:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3143, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1074:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3145, + "indexExpression": { + "argumentTypes": null, + "id": 3144, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1083:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1074:15:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3146, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "1074:19:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1074:27:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1056:45:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3150, + "nodeType": "ExpressionStatement", + "src": "1056:45:20" + }, + { + "expression": { + "argumentTypes": null, + "id": 3160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3151, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1107:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3153, + "indexExpression": { + "argumentTypes": null, + "id": 3152, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "1116:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1107:13:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3158, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1141:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3154, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1123:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3156, + "indexExpression": { + "argumentTypes": null, + "id": 3155, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "1132:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1123:13:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 2892, + "src": "1123:17:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1123:25:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1107:41:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3161, + "nodeType": "ExpressionStatement", + "src": "1107:41:20" + }, + { + "expression": { + "argumentTypes": null, + "id": 3172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3162, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "1154:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3166, + "indexExpression": { + "argumentTypes": null, + "id": 3163, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1162:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1154:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3167, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3164, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1169:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1169:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1154:26:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3170, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1198:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 3168, + "name": "_allowance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3132, + "src": "1183:10:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "1183:14:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1183:22:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1154:51:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3173, + "nodeType": "ExpressionStatement", + "src": "1154:51:20" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3175, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1220:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3176, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "1227:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3177, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1232:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3174, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "1211:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1211:28:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3179, + "nodeType": "ExpressionStatement", + "src": "1211:28:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3180, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1252:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3122, + "id": 3181, + "nodeType": "Return", + "src": "1245:11:20" + } + ] + }, + "documentation": "@dev Transfer tokens from one address to another\n@param _from address The address which you want to send tokens from\n@param _to address The address which you want to transfer to\n@param _value uint256 the amount of tokens to be transferred", + "id": 3183, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3119, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3114, + "name": "_from", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "750:13:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3113, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "750:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3116, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "765:11:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3115, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "765:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3118, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "778:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3117, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "778:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "749:44:20" + }, + "payable": false, + "returnParameters": { + "id": 3122, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3121, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "810:4:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3120, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "810:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "809:6:20" + }, + "scope": 3329, + "src": "728:533:20", + "stateMutability": "nonpayable", + "superFunction": 3051, + "visibility": "public" + }, + { + "body": { + "id": 3210, + "nodeType": "Block", + "src": "1957:110:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3192, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "1963:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3196, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3193, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1971:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1971:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1963:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3197, + "indexExpression": { + "argumentTypes": null, + "id": 3195, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3185, + "src": "1983:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1963:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 3198, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3187, + "src": "1995:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1963:38:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3200, + "nodeType": "ExpressionStatement", + "src": "1963:38:20" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3202, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2016:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2016:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3204, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3185, + "src": "2028:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3205, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3187, + "src": "2038:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3201, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3068, + "src": "2007:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2007:38:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3207, + "nodeType": "ExpressionStatement", + "src": "2007:38:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2058:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3191, + "id": 3209, + "nodeType": "Return", + "src": "2051:11:20" + } + ] + }, + "documentation": "@dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\nand the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\nrace condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\nhttps://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n@param _spender The address which will spend the funds.\n@param _value The amount of tokens to be spent.", + "id": 3211, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3185, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3211, + "src": "1901:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3184, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1901:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3187, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3211, + "src": "1919:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3186, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1919:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1900:34:20" + }, + "payable": false, + "returnParameters": { + "id": 3191, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3190, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3211, + "src": "1951:4:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3189, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1951:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1950:6:20" + }, + "scope": 3329, + "src": "1884:183:20", + "stateMutability": "nonpayable", + "superFunction": 3060, + "visibility": "public" + }, + { + "body": { + "id": 3226, + "nodeType": "Block", + "src": "2483:43:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3220, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2496:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3222, + "indexExpression": { + "argumentTypes": null, + "id": 3221, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3213, + "src": "2504:6:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2496:15:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3224, + "indexExpression": { + "argumentTypes": null, + "id": 3223, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3215, + "src": "2512:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2496:25:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3219, + "id": 3225, + "nodeType": "Return", + "src": "2489:32:20" + } + ] + }, + "documentation": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n@param _owner address The address which owns the funds.\n@param _spender address The address which will spend the funds.\n@return A uint256 specifying the amount of tokens still available for the spender.", + "id": 3227, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3216, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3213, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 3227, + "src": "2405:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3212, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2405:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3215, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3227, + "src": "2421:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3214, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2421:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2404:34:20" + }, + "payable": false, + "returnParameters": { + "id": 3219, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3218, + "name": "remaining", + "nodeType": "VariableDeclaration", + "scope": 3227, + "src": "2464:17:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3217, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2464:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2463:19:20" + }, + "scope": 3329, + "src": "2386:140:20", + "stateMutability": "view", + "superFunction": 3040, + "visibility": "public" + }, + { + "body": { + "id": 3267, + "nodeType": "Block", + "src": "2856:173:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3236, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2862:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3240, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3237, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2870:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2870:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2862:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3241, + "indexExpression": { + "argumentTypes": null, + "id": 3239, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2882:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2862:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3249, + "name": "_addedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3231, + "src": "2928:11:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3242, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2894:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3245, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3243, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2902:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2902:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2894:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3247, + "indexExpression": { + "argumentTypes": null, + "id": 3246, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2914:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2894:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 2892, + "src": "2894:33:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2894:46:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2862:78:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3252, + "nodeType": "ExpressionStatement", + "src": "2862:78:20" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3254, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2955:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2955:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3256, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2967:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3257, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2977:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3260, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3258, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2985:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2985:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2977:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3262, + "indexExpression": { + "argumentTypes": null, + "id": 3261, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2997:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2977:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3253, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3068, + "src": "2946:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2946:61:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3264, + "nodeType": "ExpressionStatement", + "src": "2946:61:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3265, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3020:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3235, + "id": 3266, + "nodeType": "Return", + "src": "3013:11:20" + } + ] + }, + "documentation": "approve should be called when allowed[_spender] == 0. To increment\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol", + "id": 3268, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "increaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3232, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3229, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3268, + "src": "2793:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3228, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2793:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3231, + "name": "_addedValue", + "nodeType": "VariableDeclaration", + "scope": 3268, + "src": "2811:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3230, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2811:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2792:36:20" + }, + "payable": false, + "returnParameters": { + "id": 3235, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3234, + "name": "success", + "nodeType": "VariableDeclaration", + "scope": 3268, + "src": "2842:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3233, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2842:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2841:14:20" + }, + "scope": 3329, + "src": "2766:263:20", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 3327, + "nodeType": "Block", + "src": "3128:309:20", + "statements": [ + { + "assignments": [ + 3278 + ], + "declarations": [ + { + "constant": false, + "id": 3278, + "name": "oldValue", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3134:13:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3277, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3134:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 3285, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3279, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3150:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3282, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3280, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3158:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3158:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3150:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3284, + "indexExpression": { + "argumentTypes": null, + "id": 3283, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3170:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3150:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3134:45:20" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3286, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3272, + "src": "3189:16:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "id": 3287, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3278, + "src": "3208:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3189:27:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 3311, + "nodeType": "Block", + "src": "3272:77:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3309, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3299, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3280:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3303, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3300, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3288:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3288:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3280:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3304, + "indexExpression": { + "argumentTypes": null, + "id": 3302, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3300:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3280:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3307, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3272, + "src": "3325:16:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 3305, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3278, + "src": "3312:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "3312:12:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3312:30:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3280:62:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3310, + "nodeType": "ExpressionStatement", + "src": "3280:62:20" + } + ] + }, + "id": 3312, + "nodeType": "IfStatement", + "src": "3185:164:20", + "trueBody": { + "id": 3298, + "nodeType": "Block", + "src": "3218:48:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3289, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3226:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3293, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3290, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3234:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3291, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3234:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3226:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3294, + "indexExpression": { + "argumentTypes": null, + "id": 3292, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3246:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3226:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "30", + "id": 3295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3258:1:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3226:33:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3297, + "nodeType": "ExpressionStatement", + "src": "3226:33:20" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3314, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3363:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3363:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3316, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3375:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3317, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3385:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3320, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3318, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3393:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3393:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3385:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3322, + "indexExpression": { + "argumentTypes": null, + "id": 3321, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3405:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3385:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3313, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3068, + "src": "3354:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3354:61:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3324, + "nodeType": "ExpressionStatement", + "src": "3354:61:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3325, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3428:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3276, + "id": 3326, + "nodeType": "Return", + "src": "3421:11:20" + } + ] + }, + "documentation": null, + "id": 3328, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "decreaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3273, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3270, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3060:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3060:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3272, + "name": "_subtractedValue", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3078:21:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3271, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3078:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3059:41:20" + }, + "payable": false, + "returnParameters": { + "id": 3276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3275, + "name": "success", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3114:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3274, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3114:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3113:14:20" + }, + "scope": 3329, + "src": "3033:404:20", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 3330, + "src": "345:3095:20" + } + ], + "src": "0:3441:20" + }, + "legacyAST": { + "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", + "exportedSymbols": { + "StandardToken": [ + 3329 + ] + }, + "id": 3330, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3100, + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ], + "nodeType": "PragmaDirective", + "src": "0:24:20" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", + "file": "./BasicToken.sol", + "id": 3101, + "nodeType": "ImportDirective", + "scope": 3330, + "sourceUnit": 3027, + "src": "27:26:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", + "file": "./ERC20.sol", + "id": 3102, + "nodeType": "ImportDirective", + "scope": 3330, + "sourceUnit": 3070, + "src": "54:21:20", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3103, + "name": "ERC20", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3069, + "src": "371:5:20", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20_$3069", + "typeString": "contract ERC20" + } + }, + "id": 3104, + "nodeType": "InheritanceSpecifier", + "src": "371:5:20" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3105, + "name": "BasicToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3026, + "src": "378:10:20", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BasicToken_$3026", + "typeString": "contract BasicToken" + } + }, + "id": 3106, + "nodeType": "InheritanceSpecifier", + "src": "378:10:20" + } + ], + "contractDependencies": [ + 3026, + 3069, + 3098 + ], + "contractKind": "contract", + "documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\n@dev https://github.com/ethereum/EIPs/issues/20\n@dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol", + "fullyImplemented": true, + "id": 3329, + "linearizedBaseContracts": [ + 3329, + 3026, + 3069, + 3098 + ], + "name": "StandardToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3112, + "name": "allowed", + "nodeType": "VariableDeclaration", + "scope": 3329, + "src": "394:57:20", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 3111, + "keyType": { + "id": 3107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "403:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "394:49:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 3110, + "keyType": { + "id": 3108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "423:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "414:28:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 3109, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "434:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 3182, + "nodeType": "Block", + "src": "816:445:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3124, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "830:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 3126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "845:1:20", + "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": 3125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "837:7:20", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 3127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "837:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "830:17:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3123, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "822:7:20", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "822:26:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3130, + "nodeType": "ExpressionStatement", + "src": "822:26:20" + }, + { + "assignments": [ + 3132 + ], + "declarations": [ + { + "constant": false, + "id": 3132, + "name": "_allowance", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "855:18:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3131, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "855:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 3139, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3133, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "876:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3135, + "indexExpression": { + "argumentTypes": null, + "id": 3134, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "884:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "876:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3138, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3136, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "891:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "891:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "876:26:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "855:47:20" + }, + { + "expression": { + "argumentTypes": null, + "id": 3149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3140, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1056:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3142, + "indexExpression": { + "argumentTypes": null, + "id": 3141, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1065:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1056:15:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3147, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1094:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3143, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1074:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3145, + "indexExpression": { + "argumentTypes": null, + "id": 3144, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1083:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1074:15:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3146, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "1074:19:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1074:27:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1056:45:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3150, + "nodeType": "ExpressionStatement", + "src": "1056:45:20" + }, + { + "expression": { + "argumentTypes": null, + "id": 3160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3151, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1107:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3153, + "indexExpression": { + "argumentTypes": null, + "id": 3152, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "1116:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1107:13:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3158, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1141:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3154, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "1123:8:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3156, + "indexExpression": { + "argumentTypes": null, + "id": 3155, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "1132:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1123:13:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 2892, + "src": "1123:17:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1123:25:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1107:41:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3161, + "nodeType": "ExpressionStatement", + "src": "1107:41:20" + }, + { + "expression": { + "argumentTypes": null, + "id": 3172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3162, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "1154:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3166, + "indexExpression": { + "argumentTypes": null, + "id": 3163, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1162:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1154:14:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3167, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3164, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1169:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1169:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1154:26:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3170, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1198:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 3168, + "name": "_allowance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3132, + "src": "1183:10:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "1183:14:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1183:22:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1154:51:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3173, + "nodeType": "ExpressionStatement", + "src": "1154:51:20" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3175, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3114, + "src": "1220:5:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3176, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3116, + "src": "1227:3:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3177, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3118, + "src": "1232:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3174, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "1211:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1211:28:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3179, + "nodeType": "ExpressionStatement", + "src": "1211:28:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3180, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1252:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3122, + "id": 3181, + "nodeType": "Return", + "src": "1245:11:20" + } + ] + }, + "documentation": "@dev Transfer tokens from one address to another\n@param _from address The address which you want to send tokens from\n@param _to address The address which you want to transfer to\n@param _value uint256 the amount of tokens to be transferred", + "id": 3183, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3119, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3114, + "name": "_from", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "750:13:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3113, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "750:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3116, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "765:11:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3115, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "765:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3118, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "778:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3117, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "778:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "749:44:20" + }, + "payable": false, + "returnParameters": { + "id": 3122, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3121, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3183, + "src": "810:4:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3120, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "810:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "809:6:20" + }, + "scope": 3329, + "src": "728:533:20", + "stateMutability": "nonpayable", + "superFunction": 3051, + "visibility": "public" + }, + { + "body": { + "id": 3210, + "nodeType": "Block", + "src": "1957:110:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3192, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "1963:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3196, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3193, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1971:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1971:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1963:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3197, + "indexExpression": { + "argumentTypes": null, + "id": 3195, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3185, + "src": "1983:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1963:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 3198, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3187, + "src": "1995:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1963:38:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3200, + "nodeType": "ExpressionStatement", + "src": "1963:38:20" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3202, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2016:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2016:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3204, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3185, + "src": "2028:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3205, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3187, + "src": "2038:6:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3201, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3068, + "src": "2007:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2007:38:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3207, + "nodeType": "ExpressionStatement", + "src": "2007:38:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2058:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3191, + "id": 3209, + "nodeType": "Return", + "src": "2051:11:20" + } + ] + }, + "documentation": "@dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\nand the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\nrace condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\nhttps://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n@param _spender The address which will spend the funds.\n@param _value The amount of tokens to be spent.", + "id": 3211, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3185, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3211, + "src": "1901:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3184, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1901:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3187, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3211, + "src": "1919:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3186, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1919:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1900:34:20" + }, + "payable": false, + "returnParameters": { + "id": 3191, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3190, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3211, + "src": "1951:4:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3189, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1951:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1950:6:20" + }, + "scope": 3329, + "src": "1884:183:20", + "stateMutability": "nonpayable", + "superFunction": 3060, + "visibility": "public" + }, + { + "body": { + "id": 3226, + "nodeType": "Block", + "src": "2483:43:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3220, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2496:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3222, + "indexExpression": { + "argumentTypes": null, + "id": 3221, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3213, + "src": "2504:6:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2496:15:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3224, + "indexExpression": { + "argumentTypes": null, + "id": 3223, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3215, + "src": "2512:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2496:25:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3219, + "id": 3225, + "nodeType": "Return", + "src": "2489:32:20" + } + ] + }, + "documentation": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n@param _owner address The address which owns the funds.\n@param _spender address The address which will spend the funds.\n@return A uint256 specifying the amount of tokens still available for the spender.", + "id": 3227, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3216, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3213, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 3227, + "src": "2405:14:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3212, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2405:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3215, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3227, + "src": "2421:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3214, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2421:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2404:34:20" + }, + "payable": false, + "returnParameters": { + "id": 3219, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3218, + "name": "remaining", + "nodeType": "VariableDeclaration", + "scope": 3227, + "src": "2464:17:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3217, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2464:7:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2463:19:20" + }, + "scope": 3329, + "src": "2386:140:20", + "stateMutability": "view", + "superFunction": 3040, + "visibility": "public" + }, + { + "body": { + "id": 3267, + "nodeType": "Block", + "src": "2856:173:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3236, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2862:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3240, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3237, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2870:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2870:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2862:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3241, + "indexExpression": { + "argumentTypes": null, + "id": 3239, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2882:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2862:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3249, + "name": "_addedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3231, + "src": "2928:11:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3242, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2894:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3245, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3243, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2902:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2902:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2894:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3247, + "indexExpression": { + "argumentTypes": null, + "id": 3246, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2914:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2894:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 2892, + "src": "2894:33:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2894:46:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2862:78:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3252, + "nodeType": "ExpressionStatement", + "src": "2862:78:20" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3254, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2955:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2955:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3256, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2967:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3257, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "2977:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3260, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3258, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2985:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2985:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2977:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3262, + "indexExpression": { + "argumentTypes": null, + "id": 3261, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3229, + "src": "2997:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2977:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3253, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3068, + "src": "2946:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2946:61:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3264, + "nodeType": "ExpressionStatement", + "src": "2946:61:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3265, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3020:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3235, + "id": 3266, + "nodeType": "Return", + "src": "3013:11:20" + } + ] + }, + "documentation": "approve should be called when allowed[_spender] == 0. To increment\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol", + "id": 3268, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "increaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3232, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3229, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3268, + "src": "2793:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3228, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2793:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3231, + "name": "_addedValue", + "nodeType": "VariableDeclaration", + "scope": 3268, + "src": "2811:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3230, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2811:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2792:36:20" + }, + "payable": false, + "returnParameters": { + "id": 3235, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3234, + "name": "success", + "nodeType": "VariableDeclaration", + "scope": 3268, + "src": "2842:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3233, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2842:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2841:14:20" + }, + "scope": 3329, + "src": "2766:263:20", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 3327, + "nodeType": "Block", + "src": "3128:309:20", + "statements": [ + { + "assignments": [ + 3278 + ], + "declarations": [ + { + "constant": false, + "id": 3278, + "name": "oldValue", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3134:13:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3277, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3134:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 3285, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3279, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3150:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3282, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3280, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3158:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3158:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3150:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3284, + "indexExpression": { + "argumentTypes": null, + "id": 3283, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3170:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3150:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3134:45:20" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3286, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3272, + "src": "3189:16:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "id": 3287, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3278, + "src": "3208:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3189:27:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 3311, + "nodeType": "Block", + "src": "3272:77:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3309, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3299, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3280:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3303, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3300, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3288:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3288:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3280:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3304, + "indexExpression": { + "argumentTypes": null, + "id": 3302, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3300:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3280:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3307, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3272, + "src": "3325:16:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 3305, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3278, + "src": "3312:8:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "3312:12:20", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 3308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3312:30:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3280:62:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3310, + "nodeType": "ExpressionStatement", + "src": "3280:62:20" + } + ] + }, + "id": 3312, + "nodeType": "IfStatement", + "src": "3185:164:20", + "trueBody": { + "id": 3298, + "nodeType": "Block", + "src": "3218:48:20", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3289, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3226:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3293, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3290, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3234:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3291, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3234:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3226:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3294, + "indexExpression": { + "argumentTypes": null, + "id": 3292, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3246:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3226:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "30", + "id": 3295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3258:1:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3226:33:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3297, + "nodeType": "ExpressionStatement", + "src": "3226:33:20" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3314, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3363:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3363:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3316, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3375:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3317, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "3385:7:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3320, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3318, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3393:3:20", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3393:10:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3385:19:20", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3322, + "indexExpression": { + "argumentTypes": null, + "id": 3321, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "3405:8:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3385:29:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3313, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3068, + "src": "3354:8:20", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3354:61:20", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3324, + "nodeType": "ExpressionStatement", + "src": "3354:61:20" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3325, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3428:4:20", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3276, + "id": 3326, + "nodeType": "Return", + "src": "3421:11:20" + } + ] + }, + "documentation": null, + "id": 3328, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "decreaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3273, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3270, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3060:16:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3060:7:20", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3272, + "name": "_subtractedValue", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3078:21:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3271, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3078:4:20", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3059:41:20" + }, + "payable": false, + "returnParameters": { + "id": 3276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3275, + "name": "success", + "nodeType": "VariableDeclaration", + "scope": 3328, + "src": "3114:12:20", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3274, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3114:4:20", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3113:14:20" + }, + "scope": 3329, + "src": "3033:404:20", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 3330, + "src": "345:3095:20" + } + ], + "src": "0:3441:20" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.066Z" +} \ No newline at end of file diff --git a/build/contracts/Store.json b/build/contracts/Store.json index d17eb02..d825254 100644 --- a/build/contracts/Store.json +++ b/build/contracts/Store.json @@ -1 +1,4960 @@ -{"contractName":"Store","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"sales","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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_buyer","type":"address"},{"indexed":false,"name":"_price","type":"uint256"}],"name":"LogBuyVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"address"}],"name":"LogAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"int256"}],"name":"LogInt","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"string"}],"name":"LogString","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"uint256"}],"name":"LogUint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes"}],"name":"LogBytes","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bytes32"}],"name":"LogBytes32","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_msg","type":"bool"}],"name":"LogBool","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"videoId","type":"string"},{"name":"ipfsData","type":"string"}],"name":"buyVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806110e383398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061101f806100c46000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cc2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610ce8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d33565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b505092919060200180519060200190929190505050809850819950829a50839b50849c50859d50505050505050610709670de0b6b3a76400006106fb6106ec610e88565b8a610f8c90919063ffffffff16565b610fbf90919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107e257600080fd5b505af11580156107f6573d6000803e3d6000fd5b505050506040513d602081101561080c57600080fd5b8101908080519060200190929190505050506108318288610fda90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561090a57600080fd5b505af115801561091e573d6000803e3d6000fd5b505050506040513d602081101561093457600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0857600080fd5b505af1158015610a1c573d6000803e3d6000fd5b505050506040513d6020811015610a3257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610b09578082015181840152602081019050610aee565b50505050905090810190601f168015610b365780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b6f578082015181840152602081019050610b54565b50505050905090810190601f168015610b9c5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bbf57600080fd5b505af1158015610bd3573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c73578082015181840152602081019050610c58565b50505050905090810190601f168015610ca05780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dca57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4c57600080fd5b505af1158015610f60573d6000803e3d6000fd5b505050506040513d6020811015610f7657600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fad5750828482811515610faa57fe5b04145b1515610fb557fe5b8091505092915050565b6000808284811515610fcd57fe5b0490508091505092915050565b6000828211151515610fe857fe5b8183039050929150505600a165627a7a72305820ff5ec5130047fffaad411e91d105f892c41175efc0e23c54a1ae9f73e83e36c20029"} \ No newline at end of file +{ + "contractName": "Store", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "sales", + "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": [ + { + "name": "_registry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "payable": false, + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_videoId", + "type": "string" + }, + { + "indexed": false, + "name": "_buyer", + "type": "address" + }, + { + "indexed": false, + "name": "_price", + "type": "uint256" + } + ], + "name": "LogBuyVideo", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "videoId", + "type": "string" + }, + { + "name": "ipfsData", + "type": "string" + } + ], + "name": "buyVideo", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516020806110e383398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061101f806100c46000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cc2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610ce8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d33565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b505092919060200180519060200190929190505050809850819950829a50839b50849c50859d50505050505050610709670de0b6b3a76400006106fb6106ec610e88565b8a610f8c90919063ffffffff16565b610fbf90919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107e257600080fd5b505af11580156107f6573d6000803e3d6000fd5b505050506040513d602081101561080c57600080fd5b8101908080519060200190929190505050506108318288610fda90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561090a57600080fd5b505af115801561091e573d6000803e3d6000fd5b505050506040513d602081101561093457600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0857600080fd5b505af1158015610a1c573d6000803e3d6000fd5b505050506040513d6020811015610a3257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610b09578082015181840152602081019050610aee565b50505050905090810190601f168015610b365780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b6f578082015181840152602081019050610b54565b50505050905090810190601f168015610b9c5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bbf57600080fd5b505af1158015610bd3573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c73578082015181840152602081019050610c58565b50505050905090810190601f168015610ca05780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dca57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4c57600080fd5b505af1158015610f60573d6000803e3d6000fd5b505050506040513d6020811015610f7657600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fad5750828482811515610faa57fe5b04145b1515610fb557fe5b8091505092915050565b6000808284811515610fcd57fe5b0490508091505092915050565b6000828211151515610fe857fe5b8183039050929150505600a165627a7a72305820344f81dc1c6c0d10330661b18f0e832c761e8d1fb46cf3fb24e956810bcd72050029", + "deployedBytecode": "0x60806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633560d4c51461007f5780637b103999146101465780638da5cb5b1461019d578063aace52fe146101f4578063f2fde38b1461024b575b34801561007957600080fd5b50600080fd5b34801561008b57600080fd5b5061012c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061028e565b604051808215151515815260200191505060405180910390f35b34801561015257600080fd5b5061015b610cc2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a957600080fd5b506101b2610ce8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561020057600080fd5b50610209610d0d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d33565b005b60008060008060608060606000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561036057600080fd5b505af1158015610374573d6000803e3d6000fd5b505050506040513d602081101561038a57600080fd5b81019080805190602001909291905050509850600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f566964656f730000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561045f57600080fd5b505af1158015610473573d6000803e3d6000fd5b505050506040513d602081101561048957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663693ec85e8d6040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610521578082015181840152602081019050610506565b50505050905090810190601f16801561054e5780820380516001836020036101000a031916815260200191505b5092505050600060405180830381600087803b15801561056d57600080fd5b505af1158015610581573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060c08110156105ab57600080fd5b81019080805190602001909291908051906020019092919080516401000000008111156105d757600080fd5b828101905060208101848111156105ed57600080fd5b815185600182028301116401000000008211171561060a57600080fd5b5050929190602001805164010000000081111561062657600080fd5b8281019050602081018481111561063c57600080fd5b815185600182028301116401000000008211171561065957600080fd5b5050929190602001805164010000000081111561067557600080fd5b8281019050602081018481111561068b57600080fd5b81518560018202830111640100000000821117156106a857600080fd5b505092919060200180519060200190929190505050809850819950829a50839b50849c50859d50505050505050610709670de0b6b3a76400006106fb6106ec610e88565b8a610f8c90919063ffffffff16565b610fbf90919063ffffffff16565b91508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338b856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156107e257600080fd5b505af11580156107f6573d6000803e3d6000fd5b505050506040513d602081101561080c57600080fd5b8101908080519060200190929190505050506108318288610fda90919063ffffffff16565b90508873ffffffffffffffffffffffffffffffffffffffff166323b872dd338a846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561090a57600080fd5b505af115801561091e573d6000803e3d6000fd5b505050506040513d602081101561093457600080fd5b810190808051906020019092919050505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260058152602001807f53616c6573000000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610a0857600080fd5b505af1158015610a1c573d6000803e3d6000fd5b505050506040513d6020811015610a3257600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663e8e459e0338e8a8f6040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184815260200180602001838103835286818151815260200191508051906020019080838360005b83811015610b09578082015181840152602081019050610aee565b50505050905090810190601f168015610b365780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610b6f578082015181840152602081019050610b54565b50505050905090810190601f168015610b9c5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610bbf57600080fd5b505af1158015610bd3573d6000803e3d6000fd5b505050507ffb16a0cb01447521c51cd70864c5a9fa252ff62fcff41f679b24426dc4793e278c338960405180806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015610c73578082015181840152602081019050610c58565b50505050905090810190601f168015610ca05780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a16001995050505050505050505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d8e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dca57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663498bff006040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252601c8152602001807f566964656f5265646973747269627574696f6e506f6f6c536861726500000000815250602001915050602060405180830381600087803b158015610f4c57600080fd5b505af1158015610f60573d6000803e3d6000fd5b505050506040513d6020811015610f7657600080fd5b8101908080519060200190929190505050905090565b60008082840290506000841480610fad5750828482811515610faa57fe5b04145b1515610fb557fe5b8091505092915050565b6000808284811515610fcd57fe5b0490508091505092915050565b6000828211151515610fe857fe5b8183039050929150505600a165627a7a72305820344f81dc1c6c0d10330661b18f0e832c761e8d1fb46cf3fb24e956810bcd72050029", + "sourceMap": "360:1779:9:-;;;558:76;8:9:-1;5:2;;;30:1;27;20:12;5:2;558:76:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;618:9:9;607:8;;:20;;;;;;;;;;;;;;;;;;558:76;360:1779;;;;;;", + "deployedSourceMap": "360:1779:9:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;360:1779:9;738:8;;;1014:931;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1014:931:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;457:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;457:24:9;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;433:18:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;433:18:9;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1014:931:9;1080:4;1137:13;1278;1301;1324:16;1350;1376;1402:10;1518:19;1671:17;1160:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1160:30:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1160:30:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1160:30:9;;;;;;;;;;;;;;;;1137:54;;1463:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1463:30:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1463:30:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1463:30:9;;;;;;;;;;;;;;;;1456:42;;;1499:7;1456:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1456:51:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1456:51:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1456:51:9;;;;;;39:16:-1;36:1;17:17;2:54;1456:51:9;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;13:3;8;5:12;2:2;;;30:1;27;20:12;2:2;1456:51:9;;;;;;;;;;;;;;;;;;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;338:9;333:1;319:12;315:20;297:16;293:43;290:58;268:11;254:12;251:29;239:118;236:2;;;370:1;367;360:12;236:2;0:382;;1456:51:9;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;338:9;333:1;319:12;315:20;297:16;293:43;290:58;268:11;254:12;251:29;239:118;236:2;;;370:1;367;360:12;236:2;0:382;;1456:51:9;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;338:9;333:1;319:12;315:20;297:16;293:43;290:58;268:11;254:12;251:29;239:118;236:2;;;370:1;367;360:12;236:2;0:382;;1456:51:9;;;;;;;;;;;;;;;;;1423:84;;;;;;;;;;;;;;;;;;;;;;;;1540:50;1581:8;1540:36;1550:25;:23;:25::i;:::-;1540:5;:9;;:36;;;;:::i;:::-;:40;;:50;;;;:::i;:::-;1518:72;;1600:6;:19;;;1620:10;1640:6;1649:11;1600:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1600:61:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1600:61:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1600:61:9;;;;;;;;;;;;;;;;;1691:22;1701:11;1691:5;:9;;:22;;;;:::i;:::-;1671:42;;1723:6;:19;;;1743:10;1755:5;1762:9;1723:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1723:49:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1723:49:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1723:49:9;;;;;;;;;;;;;;;;;1788:8;;;;;;;;;;;:20;;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1788:29:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1788:29:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1788:29:9;;;;;;;;;;;;;;;;1782:43;;;1826:10;1838:7;1847:5;1854:8;1782:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1782:81:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1782:81:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1782:81:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1782:81:9;;;;1878:39;1890:7;1899:10;1911:5;1878:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1878:39:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1934:4;1927:11;;1014:931;;;;;;;;;;;;;:::o;457:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;433:18:9:-;;;;;;;;;;;;;:::o;827:169:16:-;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;1951:186:9:-;2008:7;2082:8;;;;;;;;;;;:16;;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2082:48:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2082:48:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2082:48:9;;;;;;;;;;;;;;;;2075:55;;1951:186;:::o;138:147:15:-;200:7;215:9;231:1;227;:5;215:17;;250:1;245;:6;:20;;;;264:1;259;255;:5;;;;;;;;:10;245:20;238:28;;;;;;279:1;272:8;;138:147;;;;;:::o;289:269::-;351:7;440:9;456:1;452;:5;;;;;;;;440:17;;552:1;545:8;;289:269;;;;;:::o;562:114::-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Avatar.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\nimport \"./Sales.sol\";\nimport \"./Users.sol\";\nimport \"./Videos.sol\";\nimport \"../debug/Debug.sol\";\n\n\n/**\n * @title Store\n * @dev A Contract that wraps the native transfer function and logs an event.\n */\n\ncontract Store is Ownable, Debug {\n\n using SafeMath for uint256;\n\n Sales public sales;\n Registry public registry;\n\n event LogBuyVideo(string _videoId, address _buyer, uint _price);\n\n constructor(Registry _registry) public {\n registry = _registry;\n }\n\n // If someone accidentally sends ether to this contract, revert;\n function () public {\n revert();\n }\n\n /**\n * @dev buyVideo msg.sender buys a video\n * @param videoId the id of the video\n * For the transaction to succeed, the buyer must have approved for the Avatar to transfer\n * the sum to the owner and the redistribution pool.\n */\n function buyVideo(string videoId, string ipfsData) public returns(bool) {\n // get the info about the video\n Avatar avatar = Avatar(registry.getContract(\"Avatar\"));\n /*Videos videos = Videos(registry.getContract(\"Videos\"));*/\n \n address owner;\n uint256 price;\n string memory _3;\n string memory _4;\n string memory _5;\n address _6;\n\n (owner, price, _3, _4, _5, _6) = Videos(registry.getContract(\"Videos\")).get(videoId);\n\n uint256 paratiiPart = price.mul(redistributionPoolShare()).div(10 ** 18);\n avatar.transferFrom(msg.sender, address(avatar), paratiiPart);\n uint256 ownerPart = price.sub(paratiiPart);\n avatar.transferFrom(msg.sender, owner, ownerPart);\n Sales(registry.getContract(\"Sales\")).create(msg.sender, videoId, price, ipfsData);\n emit LogBuyVideo(videoId, msg.sender, price);\n return true;\n }\n\n function redistributionPoolShare() internal view returns(uint256) {\n // the \"percentage\" in precision 10**18\n return registry.getUint(\"VideoRedistributionPoolShare\");\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Store.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Store.sol", + "exportedSymbols": { + "Store": [ + 1573 + ] + }, + "id": 1574, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1399, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:9" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 1400, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 2894, + "src": "26:55:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", + "file": "./Avatar.sol", + "id": 1401, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 288, + "src": "82:22:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 1402, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 905, + "src": "105:28:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1403, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 1157, + "src": "134:24:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", + "file": "./Sales.sol", + "id": 1404, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 1350, + "src": "159:21:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", + "file": "./Users.sol", + "id": 1405, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 2111, + "src": "181:21:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", + "file": "./Videos.sol", + "id": 1406, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 2399, + "src": "203:22:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", + "file": "../debug/Debug.sol", + "id": 1407, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 88, + "src": "226:28:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1408, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "378:7:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1409, + "nodeType": "InheritanceSpecifier", + "src": "378:7:9" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1410, + "name": "Debug", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 87, + "src": "387:5:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Debug_$87", + "typeString": "contract Debug" + } + }, + "id": 1411, + "nodeType": "InheritanceSpecifier", + "src": "387:5:9" + } + ], + "contractDependencies": [ + 87, + 2949 + ], + "contractKind": "contract", + "documentation": "@title Store\n@dev A Contract that wraps the native transfer function and logs an event.", + "fullyImplemented": true, + "id": 1573, + "linearizedBaseContracts": [ + 1573, + 87, + 2949 + ], + "name": "Store", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 1414, + "libraryName": { + "contractScope": null, + "id": 1412, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2893, + "src": "406:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$2893", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "400:27:9", + "typeName": { + "id": 1413, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "419:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 1416, + "name": "sales", + "nodeType": "VariableDeclaration", + "scope": 1573, + "src": "433:18:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Sales_$1349", + "typeString": "contract Sales" + }, + "typeName": { + "contractScope": null, + "id": 1415, + "name": "Sales", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1349, + "src": "433:5:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Sales_$1349", + "typeString": "contract Sales" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1418, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 1573, + "src": "457:24:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1417, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "457:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 1426, + "name": "LogBuyVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 1425, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1420, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1426, + "src": "506:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1419, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "506:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1422, + "indexed": false, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1426, + "src": "523:14:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "523:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1424, + "indexed": false, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1426, + "src": "539:11:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1423, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "539:4:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "505:46:9" + }, + "src": "488:64:9" + }, + { + "body": { + "id": 1435, + "nodeType": "Block", + "src": "597:37:9", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1431, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "607:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1432, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1428, + "src": "618:9:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "607:20:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1434, + "nodeType": "ExpressionStatement", + "src": "607:20:9" + } + ] + }, + "documentation": null, + "id": 1436, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1429, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1428, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 1436, + "src": "570:18:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1427, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "570:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "569:20:9" + }, + "payable": false, + "returnParameters": { + "id": 1430, + "nodeType": "ParameterList", + "parameters": [], + "src": "597:0:9" + }, + "scope": 1573, + "src": "558:76:9", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1442, + "nodeType": "Block", + "src": "728:25:9", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1439, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3349, + 3350 + ], + "referencedDeclaration": 3349, + "src": "738:6:9", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "738:8:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1441, + "nodeType": "ExpressionStatement", + "src": "738:8:9" + } + ] + }, + "documentation": null, + "id": 1443, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1437, + "nodeType": "ParameterList", + "parameters": [], + "src": "718:2:9" + }, + "payable": false, + "returnParameters": { + "id": 1438, + "nodeType": "ParameterList", + "parameters": [], + "src": "728:0:9" + }, + "scope": 1573, + "src": "709:44:9", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1560, + "nodeType": "Block", + "src": "1087:858:9", + "statements": [ + { + "assignments": [ + 1453 + ], + "declarations": [ + { + "constant": false, + "id": 1453, + "name": "avatar", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1137:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + }, + "typeName": { + "contractScope": null, + "id": 1452, + "name": "Avatar", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 287, + "src": "1137:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1460, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "417661746172", + "id": 1457, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1181:8:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + }, + "value": "Avatar" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1455, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "1160:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1160:20:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1160:30:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1454, + "name": "Avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 287, + "src": "1153:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Avatar_$287_$", + "typeString": "type(contract Avatar)" + } + }, + "id": 1459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1153:38:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1137:54:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1462, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1278:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1461, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1278:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1463, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1278:13:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1465, + "name": "price", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1301:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1464, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1301:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1466, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1301:13:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1468, + "name": "_3", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1324:16:9", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1467, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1324:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1469, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1324:16:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1471, + "name": "_4", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1350:16:9", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1470, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1350:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1472, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1350:16:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1474, + "name": "_5", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1376:16:9", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1473, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1376:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1475, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1376:16:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1477, + "name": "_6", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1402:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1476, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1402:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1478, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1402:10:9" + }, + { + "expression": { + "argumentTypes": null, + "id": 1495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "id": 1479, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "1424:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1480, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1431:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1481, + "name": "_3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1468, + "src": "1438:2:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1482, + "name": "_4", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1471, + "src": "1442:2:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1483, + "name": "_5", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1474, + "src": "1446:2:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1484, + "name": "_6", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1477, + "src": "1450:2:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 1485, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "1423:30:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", + "typeString": "tuple(address,uint256,string memory,string memory,string memory,address)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1493, + "name": "videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1445, + "src": "1499:7:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "566964656f73", + "id": 1489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1484:8:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", + "typeString": "literal_string \"Videos\"" + }, + "value": "Videos" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", + "typeString": "literal_string \"Videos\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1487, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "1463:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1463:20:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1463:30:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1486, + "name": "Videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2398, + "src": "1456:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Videos_$2398_$", + "typeString": "type(contract Videos)" + } + }, + "id": 1491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1456:38:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Videos_$2398", + "typeString": "contract Videos" + } + }, + "id": 1492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "get", + "nodeType": "MemberAccess", + "referencedDeclaration": 2397, + "src": "1456:42:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", + "typeString": "function (string memory) view external returns (address,uint256,string memory,string memory,string memory,address)" + } + }, + "id": 1494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1456:51:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", + "typeString": "tuple(address,uint256,string memory,string memory,string memory,address)" + } + }, + "src": "1423:84:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1496, + "nodeType": "ExpressionStatement", + "src": "1423:84:9" + }, + { + "assignments": [ + 1498 + ], + "declarations": [ + { + "constant": false, + "id": 1498, + "name": "paratiiPart", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1518:19:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1497, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1518:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1509, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "id": 1507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "hexValue": "3130", + "id": 1505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1581:2:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "argumentTypes": null, + "hexValue": "3138", + "id": 1506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1587:2:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "src": "1581:8:9", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1501, + "name": "redistributionPoolShare", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1572, + "src": "1550:23:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 1502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1550:25:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1499, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1540:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "mul", + "nodeType": "MemberAccess", + "referencedDeclaration": 2830, + "src": "1540:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 1503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1540:36:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "div", + "nodeType": "MemberAccess", + "referencedDeclaration": 2848, + "src": "1540:40:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 1508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1540:50:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1518:72:9" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1513, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1620:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1620:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1516, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1453, + "src": "1640:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + ], + "id": 1515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1632:7:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1632:15:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1518, + "name": "paratiiPart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1498, + "src": "1649:11:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1510, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1453, + "src": "1600:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "id": 1512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 254, + "src": "1600:19:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 1519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1600:61:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1520, + "nodeType": "ExpressionStatement", + "src": "1600:61:9" + }, + { + "assignments": [ + 1522 + ], + "declarations": [ + { + "constant": false, + "id": 1522, + "name": "ownerPart", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1671:17:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1521, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1671:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1527, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1525, + "name": "paratiiPart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1498, + "src": "1701:11:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1523, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1691:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "1691:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 1526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1691:22:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1671:42:9" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1531, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1743:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1743:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1533, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "1755:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1534, + "name": "ownerPart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1522, + "src": "1762:9:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1528, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1453, + "src": "1723:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "id": 1530, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 254, + "src": "1723:19:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 1535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1723:49:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1536, + "nodeType": "ExpressionStatement", + "src": "1723:49:9" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1544, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1826:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1826:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1546, + "name": "videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1445, + "src": "1838:7:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1547, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1847:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1548, + "name": "ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1447, + "src": "1854:8:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "53616c6573", + "id": 1540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1809:7:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", + "typeString": "literal_string \"Sales\"" + }, + "value": "Sales" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", + "typeString": "literal_string \"Sales\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1538, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "1788:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1788:20:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1788:29:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1537, + "name": "Sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1349, + "src": "1782:5:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Sales_$1349_$", + "typeString": "type(contract Sales)" + } + }, + "id": 1542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1782:36:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Sales_$1349", + "typeString": "contract Sales" + } + }, + "id": 1543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "create", + "nodeType": "MemberAccess", + "referencedDeclaration": 1268, + "src": "1782:43:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,uint256,string memory) external" + } + }, + "id": 1549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1782:81:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1550, + "nodeType": "ExpressionStatement", + "src": "1782:81:9" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1552, + "name": "videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1445, + "src": "1890:7:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1553, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1899:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1899:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1555, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1911:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1551, + "name": "LogBuyVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1426, + "src": "1878:11:9", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (string memory,address,uint256)" + } + }, + "id": 1556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1878:39:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1557, + "nodeType": "EmitStatement", + "src": "1873:44:9" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1934:4:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1451, + "id": 1559, + "nodeType": "Return", + "src": "1927:11:9" + } + ] + }, + "documentation": "@dev buyVideo msg.sender buys a video\n@param videoId the id of the video\nFor the transaction to succeed, the buyer must have approved for the Avatar to transfer\nthe sum to the owner and the redistribution pool.", + "id": 1561, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "buyVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1448, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1445, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1032:14:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1444, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1032:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1447, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1048:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1446, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1048:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1031:33:9" + }, + "payable": false, + "returnParameters": { + "id": 1451, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1450, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1080:4:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1449, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1080:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1079:6:9" + }, + "scope": 1573, + "src": "1014:931:9", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1571, + "nodeType": "Block", + "src": "2017:120:9", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "566964656f5265646973747269627574696f6e506f6f6c5368617265", + "id": 1568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2099:30:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", + "typeString": "literal_string \"VideoRedistributionPoolShare\"" + }, + "value": "VideoRedistributionPoolShare" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", + "typeString": "literal_string \"VideoRedistributionPoolShare\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1566, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "2082:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1567, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getUint", + "nodeType": "MemberAccess", + "referencedDeclaration": 1138, + "src": "2082:16:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", + "typeString": "function (string memory) view external returns (uint256)" + } + }, + "id": 1569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2082:48:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1565, + "id": 1570, + "nodeType": "Return", + "src": "2075:55:9" + } + ] + }, + "documentation": null, + "id": 1572, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "redistributionPoolShare", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1562, + "nodeType": "ParameterList", + "parameters": [], + "src": "1983:2:9" + }, + "payable": false, + "returnParameters": { + "id": 1565, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1564, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1572, + "src": "2008:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1563, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2008:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2007:9:9" + }, + "scope": 1573, + "src": "1951:186:9", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 1574, + "src": "360:1779:9" + } + ], + "src": "0:2140:9" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Store.sol", + "exportedSymbols": { + "Store": [ + 1573 + ] + }, + "id": 1574, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1399, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:9" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 1400, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 2894, + "src": "26:55:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", + "file": "./Avatar.sol", + "id": 1401, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 288, + "src": "82:22:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 1402, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 905, + "src": "105:28:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1403, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 1157, + "src": "134:24:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", + "file": "./Sales.sol", + "id": 1404, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 1350, + "src": "159:21:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", + "file": "./Users.sol", + "id": 1405, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 2111, + "src": "181:21:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", + "file": "./Videos.sol", + "id": 1406, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 2399, + "src": "203:22:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", + "file": "../debug/Debug.sol", + "id": 1407, + "nodeType": "ImportDirective", + "scope": 1574, + "sourceUnit": 88, + "src": "226:28:9", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1408, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "378:7:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1409, + "nodeType": "InheritanceSpecifier", + "src": "378:7:9" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1410, + "name": "Debug", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 87, + "src": "387:5:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Debug_$87", + "typeString": "contract Debug" + } + }, + "id": 1411, + "nodeType": "InheritanceSpecifier", + "src": "387:5:9" + } + ], + "contractDependencies": [ + 87, + 2949 + ], + "contractKind": "contract", + "documentation": "@title Store\n@dev A Contract that wraps the native transfer function and logs an event.", + "fullyImplemented": true, + "id": 1573, + "linearizedBaseContracts": [ + 1573, + 87, + 2949 + ], + "name": "Store", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 1414, + "libraryName": { + "contractScope": null, + "id": 1412, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2893, + "src": "406:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$2893", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "400:27:9", + "typeName": { + "id": 1413, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "419:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 1416, + "name": "sales", + "nodeType": "VariableDeclaration", + "scope": 1573, + "src": "433:18:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Sales_$1349", + "typeString": "contract Sales" + }, + "typeName": { + "contractScope": null, + "id": 1415, + "name": "Sales", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1349, + "src": "433:5:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Sales_$1349", + "typeString": "contract Sales" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1418, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 1573, + "src": "457:24:9", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1417, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "457:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 1426, + "name": "LogBuyVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 1425, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1420, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1426, + "src": "506:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1419, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "506:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1422, + "indexed": false, + "name": "_buyer", + "nodeType": "VariableDeclaration", + "scope": 1426, + "src": "523:14:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "523:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1424, + "indexed": false, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 1426, + "src": "539:11:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1423, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "539:4:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "505:46:9" + }, + "src": "488:64:9" + }, + { + "body": { + "id": 1435, + "nodeType": "Block", + "src": "597:37:9", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1431, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "607:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1432, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1428, + "src": "618:9:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "607:20:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1434, + "nodeType": "ExpressionStatement", + "src": "607:20:9" + } + ] + }, + "documentation": null, + "id": 1436, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1429, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1428, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 1436, + "src": "570:18:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1427, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "570:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "569:20:9" + }, + "payable": false, + "returnParameters": { + "id": 1430, + "nodeType": "ParameterList", + "parameters": [], + "src": "597:0:9" + }, + "scope": 1573, + "src": "558:76:9", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1442, + "nodeType": "Block", + "src": "728:25:9", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1439, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3349, + 3350 + ], + "referencedDeclaration": 3349, + "src": "738:6:9", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "738:8:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1441, + "nodeType": "ExpressionStatement", + "src": "738:8:9" + } + ] + }, + "documentation": null, + "id": 1443, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1437, + "nodeType": "ParameterList", + "parameters": [], + "src": "718:2:9" + }, + "payable": false, + "returnParameters": { + "id": 1438, + "nodeType": "ParameterList", + "parameters": [], + "src": "728:0:9" + }, + "scope": 1573, + "src": "709:44:9", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1560, + "nodeType": "Block", + "src": "1087:858:9", + "statements": [ + { + "assignments": [ + 1453 + ], + "declarations": [ + { + "constant": false, + "id": 1453, + "name": "avatar", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1137:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + }, + "typeName": { + "contractScope": null, + "id": 1452, + "name": "Avatar", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 287, + "src": "1137:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1460, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "417661746172", + "id": 1457, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1181:8:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + }, + "value": "Avatar" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1455, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "1160:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1160:20:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1160:30:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1454, + "name": "Avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 287, + "src": "1153:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Avatar_$287_$", + "typeString": "type(contract Avatar)" + } + }, + "id": 1459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1153:38:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1137:54:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1462, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1278:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1461, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1278:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1463, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1278:13:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1465, + "name": "price", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1301:13:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1464, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1301:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1466, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1301:13:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1468, + "name": "_3", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1324:16:9", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1467, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1324:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1469, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1324:16:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1471, + "name": "_4", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1350:16:9", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1470, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1350:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1472, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1350:16:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1474, + "name": "_5", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1376:16:9", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1473, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1376:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1475, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1376:16:9" + }, + { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 1477, + "name": "_6", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1402:10:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1476, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1402:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1478, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1402:10:9" + }, + { + "expression": { + "argumentTypes": null, + "id": 1495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "id": 1479, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "1424:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1480, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1431:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1481, + "name": "_3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1468, + "src": "1438:2:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1482, + "name": "_4", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1471, + "src": "1442:2:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1483, + "name": "_5", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1474, + "src": "1446:2:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1484, + "name": "_6", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1477, + "src": "1450:2:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 1485, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "1423:30:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", + "typeString": "tuple(address,uint256,string memory,string memory,string memory,address)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1493, + "name": "videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1445, + "src": "1499:7:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "566964656f73", + "id": 1489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1484:8:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", + "typeString": "literal_string \"Videos\"" + }, + "value": "Videos" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", + "typeString": "literal_string \"Videos\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1487, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "1463:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1463:20:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1463:30:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1486, + "name": "Videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2398, + "src": "1456:6:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Videos_$2398_$", + "typeString": "type(contract Videos)" + } + }, + "id": 1491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1456:38:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Videos_$2398", + "typeString": "contract Videos" + } + }, + "id": 1492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "get", + "nodeType": "MemberAccess", + "referencedDeclaration": 2397, + "src": "1456:42:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", + "typeString": "function (string memory) view external returns (address,uint256,string memory,string memory,string memory,address)" + } + }, + "id": 1494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1456:51:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$", + "typeString": "tuple(address,uint256,string memory,string memory,string memory,address)" + } + }, + "src": "1423:84:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1496, + "nodeType": "ExpressionStatement", + "src": "1423:84:9" + }, + { + "assignments": [ + 1498 + ], + "declarations": [ + { + "constant": false, + "id": 1498, + "name": "paratiiPart", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1518:19:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1497, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1518:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1509, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "id": 1507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "hexValue": "3130", + "id": 1505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1581:2:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "argumentTypes": null, + "hexValue": "3138", + "id": 1506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1587:2:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + }, + "src": "1581:8:9", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1501, + "name": "redistributionPoolShare", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1572, + "src": "1550:23:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 1502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1550:25:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1499, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1540:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "mul", + "nodeType": "MemberAccess", + "referencedDeclaration": 2830, + "src": "1540:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 1503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1540:36:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "div", + "nodeType": "MemberAccess", + "referencedDeclaration": 2848, + "src": "1540:40:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 1508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1540:50:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1518:72:9" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1513, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1620:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1620:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1516, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1453, + "src": "1640:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + ], + "id": 1515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1632:7:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1632:15:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1518, + "name": "paratiiPart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1498, + "src": "1649:11:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1510, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1453, + "src": "1600:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "id": 1512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 254, + "src": "1600:19:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 1519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1600:61:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1520, + "nodeType": "ExpressionStatement", + "src": "1600:61:9" + }, + { + "assignments": [ + 1522 + ], + "declarations": [ + { + "constant": false, + "id": 1522, + "name": "ownerPart", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1671:17:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1521, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1671:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1527, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1525, + "name": "paratiiPart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1498, + "src": "1701:11:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1523, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1691:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 2868, + "src": "1691:9:9", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) view returns (uint256)" + } + }, + "id": 1526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1691:22:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1671:42:9" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1531, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1743:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1743:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1533, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "1755:5:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1534, + "name": "ownerPart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1522, + "src": "1762:9:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1528, + "name": "avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1453, + "src": "1723:6:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Avatar_$287", + "typeString": "contract Avatar" + } + }, + "id": 1530, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 254, + "src": "1723:19:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 1535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1723:49:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1536, + "nodeType": "ExpressionStatement", + "src": "1723:49:9" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1544, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1826:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1826:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1546, + "name": "videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1445, + "src": "1838:7:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1547, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1847:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1548, + "name": "ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1447, + "src": "1854:8:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "53616c6573", + "id": 1540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1809:7:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", + "typeString": "literal_string \"Sales\"" + }, + "value": "Sales" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", + "typeString": "literal_string \"Sales\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1538, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "1788:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1788:20:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 1541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1788:29:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1537, + "name": "Sales", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1349, + "src": "1782:5:9", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Sales_$1349_$", + "typeString": "type(contract Sales)" + } + }, + "id": 1542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1782:36:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Sales_$1349", + "typeString": "contract Sales" + } + }, + "id": 1543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "create", + "nodeType": "MemberAccess", + "referencedDeclaration": 1268, + "src": "1782:43:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_string_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,uint256,string memory) external" + } + }, + "id": 1549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1782:81:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1550, + "nodeType": "ExpressionStatement", + "src": "1782:81:9" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1552, + "name": "videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1445, + "src": "1890:7:9", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1553, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1899:3:9", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1899:10:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1555, + "name": "price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1465, + "src": "1911:5:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1551, + "name": "LogBuyVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1426, + "src": "1878:11:9", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (string memory,address,uint256)" + } + }, + "id": 1556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1878:39:9", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1557, + "nodeType": "EmitStatement", + "src": "1873:44:9" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1934:4:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1451, + "id": 1559, + "nodeType": "Return", + "src": "1927:11:9" + } + ] + }, + "documentation": "@dev buyVideo msg.sender buys a video\n@param videoId the id of the video\nFor the transaction to succeed, the buyer must have approved for the Avatar to transfer\nthe sum to the owner and the redistribution pool.", + "id": 1561, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "buyVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1448, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1445, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1032:14:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1444, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1032:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1447, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1048:15:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1446, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1048:6:9", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1031:33:9" + }, + "payable": false, + "returnParameters": { + "id": 1451, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1450, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1561, + "src": "1080:4:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1449, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1080:4:9", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1079:6:9" + }, + "scope": 1573, + "src": "1014:931:9", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1571, + "nodeType": "Block", + "src": "2017:120:9", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "566964656f5265646973747269627574696f6e506f6f6c5368617265", + "id": 1568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2099:30:9", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", + "typeString": "literal_string \"VideoRedistributionPoolShare\"" + }, + "value": "VideoRedistributionPoolShare" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", + "typeString": "literal_string \"VideoRedistributionPoolShare\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1566, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1418, + "src": "2082:8:9", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1567, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getUint", + "nodeType": "MemberAccess", + "referencedDeclaration": 1138, + "src": "2082:16:9", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", + "typeString": "function (string memory) view external returns (uint256)" + } + }, + "id": 1569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2082:48:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1565, + "id": 1570, + "nodeType": "Return", + "src": "2075:55:9" + } + ] + }, + "documentation": null, + "id": 1572, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "redistributionPoolShare", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1562, + "nodeType": "ParameterList", + "parameters": [], + "src": "1983:2:9" + }, + "payable": false, + "returnParameters": { + "id": 1565, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1564, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1572, + "src": "2008:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1563, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2008:7:9", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2007:9:9" + }, + "scope": 1573, + "src": "1951:186:9", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 1574, + "src": "360:1779:9" + } + ], + "src": "0:2140:9" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.056Z" +} \ No newline at end of file diff --git a/build/contracts/TcrPlaceholder.json b/build/contracts/TcrPlaceholder.json index fa35235..66ca2ff 100644 --- a/build/contracts/TcrPlaceholder.json +++ b/build/contracts/TcrPlaceholder.json @@ -1 +1,10668 @@ -{"contractName":"TcrPlaceholder","abi":[{"constant":true,"inputs":[],"name":"minDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"applyStageLen","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"listings","outputs":[{"name":"applicationExpiry","type":"uint256"},{"name":"whitelisted","type":"bool"},{"name":"owner","type":"address"},{"name":"unstakedDeposit","type":"uint256"},{"name":"challengeID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_registry","type":"address"},{"name":"_tokenAddr","type":"address"},{"name":"_minDeposit","type":"uint256"},{"name":"_applyStageLen","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"deposit","type":"uint256"}],"name":"_Application","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"_NewVideoWhitelisted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_amount","type":"uint256"}],"name":"apply","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"removeListing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"updateStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"isWhitelisted","outputs":[{"name":"whitelisted","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"appWasMade","outputs":[{"name":"exists","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_termDate","type":"uint256"}],"name":"isExpired","outputs":[{"name":"expired","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMinDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"canBeWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516080806117ba83398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003819055508060048190555050505050611646806101746000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107d1565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610891565b005b34801561024f57600080fd5b50610258610894565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061089a565b005b3480156102e357600080fd5b506102ec610901565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b50610343610927565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e61092d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610952565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c60048036038101908080359060200190929190505050610a55565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610a58565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610db9565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e1c565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610f53565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610f5f565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ea565b005b34801561068457600080fd5b5061068d61123f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040516020018082805190602001908083835b60208310151561071957805182526020820191506020810190506020830392506106f4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610782578051825260208201915060208101905060208303925061075d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b6107da81610e1c565b15610889576107e881611265565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084a57808201518184015260208101905061082f565b50505050905090810190601f1680156108775780820380516001836020036101000a031916815260200191505b509250505060405180910390a161088e565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f557600080fd5b6108fe81611372565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040516020018082805190602001908083835b602083101515610991578051825260208201915060208101905060208303925061096c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109fa57805182526020820191506020810190506020830392506109d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b6000610a9584848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b151515610aa157600080fd5b610adc84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610ae857600080fd5b6003548210151515610af957600080fd5b600160008585604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610b595780518252602082019150602081019050602083039250610b34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610cfe57600080fd5b505af1158015610d12573d6000803e3d6000fd5b505050506040513d6020811015610d2857600080fd5b81019080805190602001909291905050501515610d4457600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040516020018082805190602001908083835b602083101515610e585780518252602082019150602081019050602083039250610e33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ec15780518252602082019150602081019050602083039250610e9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610ef9836106d9565b8015610f285750610f2760016000836000191660001916815260200190815260200160002060000154610f53565b5b8015610f3a5750610f3883610952565b155b15610f485760019150610f4d565b600091505b50919050565b60004382109050919050565b6000600160008484604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610fc15780518252602082019150602081019050602083039250610f9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561106457600080fd5b61109f83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b15156110aa57600080fd5b6110e583838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611372565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040516020018082805190602001908083835b6020831015156112a0578051825260208201915060208101905060208303925061127b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130957805182526020820191506020810190506020830392506112e4565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040516020018082805190602001908083835b6020831015156113ae5780518252602082019150602081019050602083039250611389565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561141757805182526020820191506020810190506020830392506113f2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156115a457600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561155d57600080fd5b505af1158015611571573d6000803e3d6000fd5b505050506040513d602081101561158757600080fd5b810190808051906020019092919050505015156115a357600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a7230582082d5165d56c2932e5e125dc381efa73fdd1b995ffc1e08cd150c6bcff2e9d5d00029"} \ No newline at end of file +{ + "contractName": "TcrPlaceholder", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "minDeposit", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "applyStageLen", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "name": "listings", + "outputs": [ + { + "name": "applicationExpiry", + "type": "uint256" + }, + { + "name": "whitelisted", + "type": "bool" + }, + { + "name": "owner", + "type": "address" + }, + { + "name": "unstakedDeposit", + "type": "uint256" + }, + { + "name": "challengeID", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "token", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "_registry", + "type": "address" + }, + { + "name": "_tokenAddr", + "type": "address" + }, + { + "name": "_minDeposit", + "type": "uint256" + }, + { + "name": "_applyStageLen", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "videoId", + "type": "string" + }, + { + "indexed": false, + "name": "deposit", + "type": "uint256" + } + ], + "name": "_Application", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "videoId", + "type": "string" + } + ], + "name": "_NewVideoWhitelisted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + }, + { + "name": "_amount", + "type": "uint256" + } + ], + "name": "apply", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "amount", + "type": "uint256" + } + ], + "name": "deposit", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "amount", + "type": "uint256" + } + ], + "name": "withdraw", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "exit", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "removeListing", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "updateStatus", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "isWhitelisted", + "outputs": [ + { + "name": "whitelisted", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "appWasMade", + "outputs": [ + { + "name": "exists", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_termDate", + "type": "uint256" + } + ], + "name": "isExpired", + "outputs": [ + { + "name": "expired", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getMinDeposit", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "canBeWhitelisted", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516080806117ba83398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816003819055508060048190555050505050611646806101746000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107d1565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610891565b005b34801561024f57600080fd5b50610258610894565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061089a565b005b3480156102e357600080fd5b506102ec610901565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b50610343610927565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e61092d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610952565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c60048036038101908080359060200190929190505050610a55565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610a58565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610db9565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e1c565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610f53565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610f5f565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ea565b005b34801561068457600080fd5b5061068d61123f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040516020018082805190602001908083835b60208310151561071957805182526020820191506020810190506020830392506106f4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610782578051825260208201915060208101905060208303925061075d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b6107da81610e1c565b15610889576107e881611265565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084a57808201518184015260208101905061082f565b50505050905090810190601f1680156108775780820380516001836020036101000a031916815260200191505b509250505060405180910390a161088e565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f557600080fd5b6108fe81611372565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040516020018082805190602001908083835b602083101515610991578051825260208201915060208101905060208303925061096c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109fa57805182526020820191506020810190506020830392506109d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b6000610a9584848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b151515610aa157600080fd5b610adc84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610ae857600080fd5b6003548210151515610af957600080fd5b600160008585604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610b595780518252602082019150602081019050602083039250610b34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610cfe57600080fd5b505af1158015610d12573d6000803e3d6000fd5b505050506040513d6020811015610d2857600080fd5b81019080805190602001909291905050501515610d4457600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040516020018082805190602001908083835b602083101515610e585780518252602082019150602081019050602083039250610e33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ec15780518252602082019150602081019050602083039250610e9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610ef9836106d9565b8015610f285750610f2760016000836000191660001916815260200190815260200160002060000154610f53565b5b8015610f3a5750610f3883610952565b155b15610f485760019150610f4d565b600091505b50919050565b60004382109050919050565b6000600160008484604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610fc15780518252602082019150602081019050602083039250610f9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561106457600080fd5b61109f83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b15156110aa57600080fd5b6110e583838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611372565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040516020018082805190602001908083835b6020831015156112a0578051825260208201915060208101905060208303925061127b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130957805182526020820191506020810190506020830392506112e4565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040516020018082805190602001908083835b6020831015156113ae5780518252602082019150602081019050602083039250611389565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561141757805182526020820191506020810190506020830392506113f2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156115a457600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561155d57600080fd5b505af1158015611571573d6000803e3d6000fd5b505050506040513d602081101561158757600080fd5b810190808051906020019092919050505015156115a357600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a72305820dec0e464f69c908bdf488b59978e73509c6eeb56fec16f81cd6dc8c8c471207c0029", + "deployedBytecode": "0x6080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630eaad3f1146101015780630f53ba511461012c5780632c215998146101ad5780632e1a7d4d1461021657806341b3d185146102435780635149606e1461026e5780637b103999146102d75780637f0733601461032e5780638da5cb5b14610359578063b48eea44146103b0578063b6b55f2514610431578063bfa535c71461045e578063c18b8db4146104a3578063c53c614d14610534578063d9548e53146105b5578063e7fb5388146105fa578063f2fde38b14610635578063fc0c546a14610678575b600080fd5b34801561010d57600080fd5b506101166106cf565b6040518082815260200191505060405180910390f35b34801561013857600080fd5b50610193600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106d9565b604051808215151515815260200191505060405180910390f35b3480156101b957600080fd5b50610214600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107d1565b005b34801561022257600080fd5b5061024160048036038101908080359060200190929190505050610891565b005b34801561024f57600080fd5b50610258610894565b6040518082815260200191505060405180910390f35b34801561027a57600080fd5b506102d5600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061089a565b005b3480156102e357600080fd5b506102ec610901565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561033a57600080fd5b50610343610927565b6040518082815260200191505060405180910390f35b34801561036557600080fd5b5061036e61092d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103bc57600080fd5b50610417600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610952565b604051808215151515815260200191505060405180910390f35b34801561043d57600080fd5b5061045c60048036038101908080359060200190929190505050610a55565b005b34801561046a57600080fd5b506104a160048036038101908080359060200190820180359060200191909192939192939080359060200190929190505050610a58565b005b3480156104af57600080fd5b506104d26004803603810190808035600019169060200190929190505050610db9565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b34801561054057600080fd5b5061059b600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610e1c565b604051808215151515815260200191505060405180910390f35b3480156105c157600080fd5b506105e060048036038101908080359060200190929190505050610f53565b604051808215151515815260200191505060405180910390f35b34801561060657600080fd5b50610633600480360381019080803590602001908201803590602001919091929391929390505050610f5f565b005b34801561064157600080fd5b50610676600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ea565b005b34801561068457600080fd5b5061068d61123f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000600354905090565b60008060016000846040516020018082805190602001908083835b60208310151561071957805182526020820191506020810190506020830392506106f4565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610782578051825260208201915060208101905060208303925061075d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000154119050919050565b6107da81610e1c565b15610889576107e881611265565b7fc92324d3d33d8a562daa770a1055b75689efa4374d7c65f0a9b2f6b9f090d796816040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084a57808201518184015260208101905061082f565b50505050905090810190601f1680156108775780820380516001836020036101000a031916815260200191505b509250505060405180910390a161088e565b600080fd5b50565b50565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156108f557600080fd5b6108fe81611372565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060016000836040516020018082805190602001908083835b602083101515610991578051825260208201915060208101905060208303925061096c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156109fa57805182526020820191506020810190506020830392506109d5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b50565b6000610a9584848080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b151515610aa157600080fd5b610adc84848080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050506106d9565b151515610ae857600080fd5b6003548210151515610af957600080fd5b600160008585604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610b595780518252602082019150602081019050602083039250610b34565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610cfe57600080fd5b505af1158015610d12573d6000803e3d6000fd5b505050506040513d6020811015610d2857600080fd5b81019080805190602001909291905050501515610d4457600080fd5b600454430181600001819055508181600201819055507f8679b3793e06c33189be2319d77a55df6769e3b9061611d27f1809b3d56d2e6884848460405180806020018381526020018281038252858582818152602001925080828437820191505094505050505060405180910390a150505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080826040516020018082805190602001908083835b602083101515610e585780518252602082019150602081019050602083039250610e33565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ec15780518252602082019150602081019050602083039250610e9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050610ef9836106d9565b8015610f285750610f2760016000836000191660001916815260200190815260200160002060000154610f53565b5b8015610f3a5750610f3883610952565b155b15610f485760019150610f4d565b600091505b50919050565b60004382109050919050565b6000600160008484604051602001808383808284378201915050925050506040516020818303038152906040526040518082805190602001908083835b602083101515610fc15780518252602082019150602081019050602083039250610f9c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561106457600080fd5b61109f83838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050610952565b15156110aa57600080fd5b6110e583838080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050611372565b505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000816040516020018082805190602001908083835b6020831015156112a0578051825260208201915060208101905060208303925061127b565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561130957805182526020820191506020810190506020830392506112e4565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090506001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b600080826040516020018082805190602001908083835b6020831015156113ae5780518252602082019150602081019050602083039250611389565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561141757805182526020820191506020810190506020830392506113f2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000816002015411156115a457600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683600201546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561155d57600080fd5b505af1158015611571573d6000803e3d6000fd5b505050506040513d602081101561158757600080fd5b810190808051906020019092919050505015156115a357600080fd5b5b6001600083600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550505050505600a165627a7a72305820dec0e464f69c908bdf488b59978e73509c6eeb56fec16f81cd6dc8c8c471207c0029", + "sourceMap": "237:6566:10:-;;;1119:332;8:9:-1;5:2;;;30:1;27;20:12;5:2;1119:332:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;1273:10:10;1265:5;;:18;;;;;;;;;;;;;;;;;;1304:9;1293:8;;:20;;;;;;;;;;;;;;;;;;1344:10;1323:5;;:32;;;;;;;;;;;;;;;;;;1378:11;1365:10;:24;;;;1415:14;1399:13;:30;;;;1119:332;;;;237:6566;;;;;;", + "deployedSourceMap": "237:6566:10:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5511:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5511:86:10;;;;;;;;;;;;;;;;;;;;;;;5155:164;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5155:164:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3890:237;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3890:237:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2766:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2766:48:10;;;;;;;;;;;;;;;;;;;;;;;;;;900:22;;8:9:-1;5:2;;;30:1;27;20:12;5:2;900:22:10;;;;;;;;;;;;;;;;;;;;;;;3561:96;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3561:96:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;959:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;959:24:10;;;;;;;;;;;;;;;;;;;;;;;;;;;928:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;928:25:10;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;4927:162:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4927:162:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2593:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2593:47:10;;;;;;;;;;;;;;;;;;;;;;;;;;1763:657;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1763:657:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;819:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;819:43:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5778:481;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5778:481:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5387:118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5387:118:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2956:479;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2956:479:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;869:25:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;869:25:10;;;;;;;;;;;;;;;;;;;;;;;;;;;5511:86;5557:4;5580:10;;5573:17;;5511:86;:::o;5155:164::-;5213:11;5311:1;5243:8;:47;5279:8;5262:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5262:26:10;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;5262:26:10;;;5252:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5252:37:10;;;;;;;;;;;;;;;;5243:47;;;;;;;;;;;;;;;;;:65;;;:69;5236:76;;5155:164;;;:::o;3890:237::-;3950:26;3967:8;3950:16;:26::i;:::-;3946:175;;;3992:30;4013:8;3992:20;:30::i;:::-;4041;4062:8;4041:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4041:30:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3946:175;;;4102:8;;;3946:175;3890:237;:::o;2766:48::-;;:::o;900:22::-;;;;:::o;3561:96::-;647:5:16;;;;;;;;;;;633:19;;:10;:19;;;625:28;;;;;;;;3628:22:10;3641:8;3628:12;:22::i;:::-;3561:96;:::o;959:24::-;;;;;;;;;;;;;:::o;928:25::-;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;4927:162:10:-;4988:16;5023:8;:47;5059:8;5042:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5042:26:10;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;5042:26:10;;;5032:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5032:37:10;;;;;;;;;;;;;;;;5023:47;;;;;;;;;;;;;;;;;:59;;;;;;;;;;;;5016:66;;4927:162;;;:::o;2593:47::-;;:::o;1763:657::-;1973:23;1837;1851:8;;1837:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:23::i;:::-;1836:24;1828:33;;;;;;;;1880:20;1891:8;;1880:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:10;:20::i;:::-;1879:21;1871:30;;;;;;;;1930:10;;1919:7;:21;;1911:30;;;;;;;;1999:8;:47;2035:8;;2018:26;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2018:26:10;;;2008:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2008:37:10;;;;;;;;;;;;;;;;1999:47;;;;;;;;;;;;;;;;;1973:73;;2072:10;2056:7;:13;;;:26;;;;;;;;;;;;;;;;;;2165:5;;;;;;;;;;;:18;;;2184:7;:13;;;;;;;;;;;;2199:4;2205:7;2165:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2165:48:10;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2165:48:10;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2165:48:10;;;;;;;;;;;;;;;;2157:57;;;;;;;;2310:13;;2295:12;:28;2267:7;:25;;:56;;;;2359:7;2333;:23;;:33;;;;2382:31;2395:8;;2405:7;2382:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:657;;;;:::o;819:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5778:481::-;5842:4;5858:17;5905:8;5888:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5888:26:10;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;5888:26:10;;;5878:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5878:37:10;;;;;;;;;;;;;;;;5858:57;;6079:20;6090:8;6079:10;:20::i;:::-;:84;;;;;6115:48;6125:8;:19;6134:9;6125:19;;;;;;;;;;;;;;;;;:37;;;6115:9;:48::i;:::-;6079:84;:124;;;;;6180:23;6194:8;6180:13;:23::i;:::-;6179:24;6079:124;6062:168;;;6223:4;6216:11;;;;6062:168;6247:5;6240:12;;5778:481;;;;;:::o;5387:118::-;5443:12;5486;5474:9;:24;5467:31;;5387:118;;;:::o;2956:479::-;3006:23;3032:8;:47;3068:8;;3051:26;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3051:26:10;;;3041:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3041:37:10;;;;;;;;;;;;;;;;3032:47;;;;;;;;;;;;;;;;;3006:73;;3112:7;:13;;;;;;;;;;;;3098:27;;:10;:27;;;3090:36;;;;;;;;3144:23;3158:8;;3144:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:13;:23::i;:::-;3136:32;;;;;;;;3406:22;3419:8;;3406:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:12;:22::i;:::-;2956:479;;;:::o;827:169:16:-;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;869:25:10:-;;;;;;;;;;;;;:::o;4413:178::-;4478:17;4525:8;4508:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4508:26:10;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4508:26:10;;;4498:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4498:37:10;;;;;;;;;;;;;;;;4478:57;;4580:4;4546:8;:19;4555:9;4546:19;;;;;;;;;;;;;;;;;:31;;;:38;;;;;;;;;;;;;;;;;;4413:178;;:::o;6407:393::-;6464:17;6531:23;6511:8;6494:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;6494:26:10;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6494:26:10;;;6484:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;6484:37:10;;;;;;;;;;;;;;;;6464:57;;6557:8;:19;6566:9;6557:19;;;;;;;;;;;;;;;;;6531:45;;6678:1;6652:7;:23;;;:27;6648:108;;;6701:5;;;;;;;;;;;:14;;;6716:7;:13;;;;;;;;;;;;6731:7;:23;;;6701:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6701:54:10;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6701:54:10;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6701:54:10;;;;;;;;;;;;;;;;6693:63;;;;;;;;6648:108;6774:8;:19;6783:9;6774:19;;;;;;;;;;;;;;;;;;6767:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6407:393;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\n\n/// WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n/// THIS IS JUST A PLACEHOLDER..\ncontract TcrPlaceholder is Ownable {\n\n // Events\n // ---------\n\n event _Application(string videoId, uint deposit);\n event _NewVideoWhitelisted(string videoId);\n\n struct Listing {\n uint applicationExpiry; // Expiration date of apply stage\n bool whitelisted; // registration status\n address owner; // Owner of the video.\n uint unstakedDeposit; // Number of tokens in the listing not locked in a challenge\n uint challengeID; // ID of canonical challenge\n }\n\n // Maps of videoId Hashes to listing data.\n mapping(bytes32 => Listing) public listings;\n\n ParatiiToken public token;\n uint public minDeposit;\n uint public applyStageLen;\n Registry public registry;\n\n // ---------------------------------------------------------------------------\n // CONSTRUCTOR\n // ------------------\n\n constructor(\n Registry _registry,\n address _tokenAddr,\n uint _minDeposit,\n uint _applyStageLen\n ) public {\n owner = msg.sender;\n registry = _registry;\n token = ParatiiToken(_tokenAddr);\n minDeposit = _minDeposit;\n applyStageLen = _applyStageLen; // 100 blocks.\n }\n\n // ---------------------------------------------------------------------------\n // Video creator functions\n //------------------------\n\n /**\n * allow video creator to apply for whitelisting for a video.\n * @param _videoId the videoId\n * @param _amount the amount to Stake\n */\n function apply(string _videoId, uint _amount) external {\n require(!isWhitelisted(_videoId));\n require(!appWasMade(_videoId));\n require(_amount >= minDeposit);\n\n // set owner\n Listing storage listing = listings[keccak256(abi.encodePacked(_videoId))];\n listing.owner = msg.sender;\n\n // transfer tokens from user to TcrPlaceholder contract\n require(token.transferFrom(listing.owner, this, _amount));\n\n // sets apply stage and end time.\n listing.applicationExpiry = block.number + applyStageLen;\n listing.unstakedDeposit = _amount;\n\n emit _Application(_videoId, _amount);\n }\n\n /**\n * deposit an amount of tokens. (unstaked)\n * @param amount the amount to deposit\n * @return {EVENT} returns event log of deposit event.\n */\n function deposit(uint amount) external {\n\n }\n\n /**\n * take out an amount of tokens from the unstaked tokens.\n * @param amount the amount to take out\n */\n function withdraw(uint amount) external {\n\n }\n\n /**\n * allow video creator to remove a video from the listing and return tokens.\n * @param _videoId videoId to remove\n */\n function exit(string _videoId) external {\n Listing storage listing = listings[keccak256(abi.encodePacked(_videoId))];\n\n require(msg.sender == listing.owner);\n require(isWhitelisted(_videoId));\n\n // Cannot exit during ongoing challenge\n /* require(!challenges[listing.challengeID].isInitialized() ||\n challenges[listing.challengeID].isResolved()); */\n\n // Remove domain & return tokens\n resetListing(_videoId);\n }\n\n /**\n * remove a video , Only the TCR owner can do this.\n * @param _videoId id of the video to remove.\n */\n function removeListing(string _videoId) public onlyOwner {\n resetListing(_videoId);\n }\n\n /**\n @notice Updates a videos's status from 'application' to 'listing'\n @notice or resolves a challenge if one exists.\n @param _videoId The videoId whose status is being updated\n */\n function updateStatus(string _videoId) public {\n if (canBeWhitelisted(_videoId)) {\n whitelistApplication(_videoId);\n emit _NewVideoWhitelisted(_videoId);\n } else {\n revert();\n }\n }\n\n /**\n @dev Called by updateStatus() if the applicationExpiry date passed without a\n challenge being made\n @dev Called by resolveChallenge() if an application/listing beat a challenge.\n @param _videoId The _videoId of an application/listing to be whitelisted\n */\n function whitelistApplication(string _videoId) private {\n bytes32 videoHash = keccak256(abi.encodePacked(_videoId));\n\n listings[videoHash].whitelisted = true;\n }\n\n //----------------------------------------------------------------------------\n // Token HODLers functions\n //--------------------------\n\n // ---------------------------------------------------------------------------\n // Utilities\n //------------------------\n /// @dev returns true if video is whitelisted\n function isWhitelisted(string _videoId) view public returns (bool whitelisted) {\n return listings[keccak256(abi.encodePacked(_videoId))].whitelisted;\n }\n\n // @dev returns true if apply was called for this video\n function appWasMade(string _videoId) view public returns (bool exists) {\n return listings[keccak256(abi.encodePacked(_videoId))].applicationExpiry > 0;\n }\n\n /// @dev returns true if the provided termDate has passed\n function isExpired(uint _termDate) view public returns (bool expired) {\n return _termDate < block.number;\n }\n\n function getMinDeposit() view public returns (uint) {\n return minDeposit;\n }\n\n /**\n @dev Determines whether the video of an application can be whitelisted.\n @param _videoId The videoId whose status should be examined\n */\n function canBeWhitelisted(string _videoId) view public returns (bool) {\n bytes32 videoHash = keccak256(abi.encodePacked(_videoId));\n\n // Ensures that the application was made,\n // the application period has ended,\n // the video can be whitelisted,\n if (\n appWasMade(_videoId) &&\n isExpired(listings[videoHash].applicationExpiry) &&\n !isWhitelisted(_videoId)\n ) { return true; }\n\n return false;\n }\n\n /**\n @dev deletes a listing from the whitelist and transfers tokens back to owner\n @param _videoId the videoId to be removed\n */\n function resetListing(string _videoId) private {\n bytes32 videoHash = keccak256(abi.encodePacked(_videoId));\n Listing storage listing = listings[videoHash];\n\n // Transfers any remaining balance back to the owner\n if (listing.unstakedDeposit > 0)\n require(token.transfer(listing.owner, listing.unstakedDeposit));\n\n delete listings[videoHash];\n }\n\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/TcrPlaceholder.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/TcrPlaceholder.sol", + "exportedSymbols": { + "TcrPlaceholder": [ + 1967 + ] + }, + "id": 1968, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1575, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:10" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 1576, + "nodeType": "ImportDirective", + "scope": 1968, + "sourceUnit": 2950, + "src": "26:59:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 1577, + "nodeType": "ImportDirective", + "scope": 1968, + "sourceUnit": 905, + "src": "86:28:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1578, + "nodeType": "ImportDirective", + "scope": 1968, + "sourceUnit": 1157, + "src": "115:24:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1579, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "264:7:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1580, + "nodeType": "InheritanceSpecifier", + "src": "264:7:10" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": "WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n THIS IS JUST A PLACEHOLDER..", + "fullyImplemented": true, + "id": 1967, + "linearizedBaseContracts": [ + 1967, + 2949 + ], + "name": "TcrPlaceholder", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 1586, + "name": "_Application", + "nodeType": "EventDefinition", + "parameters": { + "id": 1585, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1582, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 1586, + "src": "330:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1581, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "330:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1584, + "indexed": false, + "name": "deposit", + "nodeType": "VariableDeclaration", + "scope": 1586, + "src": "346:12:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1583, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "346:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "329:30:10" + }, + "src": "311:49:10" + }, + { + "anonymous": false, + "documentation": null, + "id": 1590, + "name": "_NewVideoWhitelisted", + "nodeType": "EventDefinition", + "parameters": { + "id": 1589, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1588, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 1590, + "src": "392:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1587, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "392:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "391:16:10" + }, + "src": "365:43:10" + }, + { + "canonicalName": "TcrPlaceholder.Listing", + "id": 1601, + "members": [ + { + "constant": false, + "id": 1592, + "name": "applicationExpiry", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "439:22:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1591, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "439:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1594, + "name": "whitelisted", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "505:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1593, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "505:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1596, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "560:13:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1595, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "560:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1598, + "name": "unstakedDeposit", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "615:20:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1597, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "615:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1600, + "name": "challengeID", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "708:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1599, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "708:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Listing", + "nodeType": "StructDefinition", + "scope": 1967, + "src": "414:352:10", + "visibility": "public" + }, + { + "constant": false, + "id": 1605, + "name": "listings", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "819:43:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" + }, + "typeName": { + "id": 1604, + "keyType": { + "id": 1602, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "827:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "819:27:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" + }, + "valueType": { + "contractScope": null, + "id": 1603, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "838:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1607, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "869:25:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 1606, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "869:12:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1609, + "name": "minDeposit", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "900:22:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1608, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "900:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1611, + "name": "applyStageLen", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "928:25:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1610, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "928:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1613, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "959:24:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1612, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "959:8:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 1647, + "nodeType": "Block", + "src": "1255:196:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1624, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1265:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1625, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1273:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1273:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1265:18:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1628, + "nodeType": "ExpressionStatement", + "src": "1265:18:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1629, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1613, + "src": "1293:8:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1630, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1615, + "src": "1304:9:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "1293:20:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1632, + "nodeType": "ExpressionStatement", + "src": "1293:20:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1633, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1607, + "src": "1323:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1635, + "name": "_tokenAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1617, + "src": "1344:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1634, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "1331:12:10", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 1636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1331:24:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "src": "1323:32:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 1638, + "nodeType": "ExpressionStatement", + "src": "1323:32:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1639, + "name": "minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "1365:10:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1640, + "name": "_minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1619, + "src": "1378:11:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1365:24:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1642, + "nodeType": "ExpressionStatement", + "src": "1365:24:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1643, + "name": "applyStageLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1611, + "src": "1399:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1644, + "name": "_applyStageLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1621, + "src": "1415:14:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1399:30:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1646, + "nodeType": "ExpressionStatement", + "src": "1399:30:10" + } + ] + }, + "documentation": null, + "id": 1648, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1622, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1615, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1140:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1614, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "1140:8:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1617, + "name": "_tokenAddr", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1168:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1616, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1168:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1619, + "name": "_minDeposit", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1196:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1618, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1196:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1621, + "name": "_applyStageLen", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1222:19:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1620, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1222:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1130:117:10" + }, + "payable": false, + "returnParameters": { + "id": 1623, + "nodeType": "ParameterList", + "parameters": [], + "src": "1255:0:10" + }, + "scope": 1967, + "src": "1119:332:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1723, + "nodeType": "Block", + "src": "1818:602:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1836:24:10", + "subExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1657, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "1851:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1656, + "name": "isWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "1837:13:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1837:23:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1655, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1828:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1828:33:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1661, + "nodeType": "ExpressionStatement", + "src": "1828:33:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1879:21:10", + "subExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1664, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "1891:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1663, + "name": "appWasMade", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1866, + "src": "1880:10:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1880:20:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1662, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1871:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1871:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1668, + "nodeType": "ExpressionStatement", + "src": "1871:30:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 1670, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "1919:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 1671, + "name": "minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "1930:10:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1919:21:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1669, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1911:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1911:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1674, + "nodeType": "ExpressionStatement", + "src": "1911:30:10" + }, + { + "assignments": [ + 1676 + ], + "declarations": [ + { + "constant": false, + "id": 1676, + "name": "listing", + "nodeType": "VariableDeclaration", + "scope": 1724, + "src": "1973:23:10", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + }, + "typeName": { + "contractScope": null, + "id": 1675, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "1973:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1685, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1677, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "1999:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1684, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1681, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "2035:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "expression": { + "argumentTypes": null, + "id": 1679, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2018:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2018:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2018:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1678, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2008:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2008:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1999:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1973:73:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1686, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2056:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1688, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "2056:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1689, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2072:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2072:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2056:26:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1692, + "nodeType": "ExpressionStatement", + "src": "2056:26:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1696, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2184:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1697, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "2184:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1698, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3393, + "src": "2199:4:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", + "typeString": "contract TcrPlaceholder" + } + }, + { + "argumentTypes": null, + "id": 1699, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "2205:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", + "typeString": "contract TcrPlaceholder" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1694, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1607, + "src": "2165:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 1695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 3183, + "src": "2165:18:10", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 1700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2165:48:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1693, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "2157:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2157:57:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1702, + "nodeType": "ExpressionStatement", + "src": "2157:57:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1703, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2267:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1705, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "applicationExpiry", + "nodeType": "MemberAccess", + "referencedDeclaration": 1592, + "src": "2267:25:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1706, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3334, + "src": "2295:5:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2295:12:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "id": 1708, + "name": "applyStageLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1611, + "src": "2310:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2295:28:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2267:56:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1711, + "nodeType": "ExpressionStatement", + "src": "2267:56:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1712, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2333:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1714, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "unstakedDeposit", + "nodeType": "MemberAccess", + "referencedDeclaration": 1598, + "src": "2333:23:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1715, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "2359:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2333:33:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1717, + "nodeType": "ExpressionStatement", + "src": "2333:33:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1719, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "2395:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "argumentTypes": null, + "id": 1720, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "2405:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1718, + "name": "_Application", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1586, + "src": "2382:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2382:31:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1722, + "nodeType": "EmitStatement", + "src": "2377:36:10" + } + ] + }, + "documentation": "allow video creator to apply for whitelisting for a video.\n@param _videoId the videoId\n@param _amount the amount to Stake", + "id": 1724, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "apply", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1653, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1650, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1724, + "src": "1778:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1649, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1778:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1652, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 1724, + "src": "1795:12:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1651, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1795:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1777:31:10" + }, + "payable": false, + "returnParameters": { + "id": 1654, + "nodeType": "ParameterList", + "parameters": [], + "src": "1818:0:10" + }, + "scope": 1967, + "src": "1763:657:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1729, + "nodeType": "Block", + "src": "2632:8:10", + "statements": [] + }, + "documentation": "deposit an amount of tokens. (unstaked)\n@param amount the amount to deposit\n@return {EVENT} returns event log of deposit event.", + "id": 1730, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "deposit", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1727, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1726, + "name": "amount", + "nodeType": "VariableDeclaration", + "scope": 1730, + "src": "2610:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1725, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2610:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2609:13:10" + }, + "payable": false, + "returnParameters": { + "id": 1728, + "nodeType": "ParameterList", + "parameters": [], + "src": "2632:0:10" + }, + "scope": 1967, + "src": "2593:47:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1735, + "nodeType": "Block", + "src": "2806:8:10", + "statements": [] + }, + "documentation": "take out an amount of tokens from the unstaked tokens.\n@param amount the amount to take out", + "id": 1736, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "withdraw", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1733, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1732, + "name": "amount", + "nodeType": "VariableDeclaration", + "scope": 1736, + "src": "2784:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1731, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2784:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2783:13:10" + }, + "payable": false, + "returnParameters": { + "id": 1734, + "nodeType": "ParameterList", + "parameters": [], + "src": "2806:0:10" + }, + "scope": 1967, + "src": "2766:48:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1770, + "nodeType": "Block", + "src": "2996:439:10", + "statements": [ + { + "assignments": [ + 1742 + ], + "declarations": [ + { + "constant": false, + "id": 1742, + "name": "listing", + "nodeType": "VariableDeclaration", + "scope": 1771, + "src": "3006:23:10", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + }, + "typeName": { + "contractScope": null, + "id": 1741, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "3006:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1751, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1743, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "3032:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1750, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1747, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1738, + "src": "3068:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "expression": { + "argumentTypes": null, + "id": 1745, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3051:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3051:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3051:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1744, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3041:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3041:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3032:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3006:73:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1753, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3098:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3098:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1755, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1742, + "src": "3112:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1756, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "3112:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3098:27:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1752, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "3090:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3090:36:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1759, + "nodeType": "ExpressionStatement", + "src": "3090:36:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1762, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1738, + "src": "3158:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1761, + "name": "isWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "3144:13:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1763, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3144:23:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1760, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "3136:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3136:32:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1765, + "nodeType": "ExpressionStatement", + "src": "3136:32:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1767, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1738, + "src": "3419:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1766, + "name": "resetListing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1966, + "src": "3406:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1768, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3406:22:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1769, + "nodeType": "ExpressionStatement", + "src": "3406:22:10" + } + ] + }, + "documentation": "allow video creator to remove a video from the listing and return tokens.\n@param _videoId videoId to remove", + "id": 1771, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "exit", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1739, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1738, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1771, + "src": "2970:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1737, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2970:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2969:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1740, + "nodeType": "ParameterList", + "parameters": [], + "src": "2996:0:10" + }, + "scope": 1967, + "src": "2956:479:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1782, + "nodeType": "Block", + "src": "3618:39:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1779, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1773, + "src": "3641:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1778, + "name": "resetListing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1966, + "src": "3628:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3628:22:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1781, + "nodeType": "ExpressionStatement", + "src": "3628:22:10" + } + ] + }, + "documentation": "remove a video , Only the TCR owner can do this.\n@param _videoId id of the video to remove.", + "id": 1783, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1776, + "modifierName": { + "argumentTypes": null, + "id": 1775, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "3608:9:10", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "3608:9:10" + } + ], + "name": "removeListing", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1774, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1773, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1783, + "src": "3584:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1772, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3584:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3583:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1777, + "nodeType": "ParameterList", + "parameters": [], + "src": "3618:0:10" + }, + "scope": 1967, + "src": "3561:96:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1805, + "nodeType": "Block", + "src": "3936:191:10", + "statements": [ + { + "condition": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1789, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1785, + "src": "3967:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1788, + "name": "canBeWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "3950:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3950:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1803, + "nodeType": "Block", + "src": "4088:33:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1800, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3349, + 3350 + ], + "referencedDeclaration": 3349, + "src": "4102:6:10", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4102:8:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1802, + "nodeType": "ExpressionStatement", + "src": "4102:8:10" + } + ] + }, + "id": 1804, + "nodeType": "IfStatement", + "src": "3946:175:10", + "trueBody": { + "id": 1799, + "nodeType": "Block", + "src": "3978:104:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1792, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1785, + "src": "4013:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1791, + "name": "whitelistApplication", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1828, + "src": "3992:20:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3992:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1794, + "nodeType": "ExpressionStatement", + "src": "3992:30:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1796, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1785, + "src": "4062:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1795, + "name": "_NewVideoWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1590, + "src": "4041:20:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4041:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1798, + "nodeType": "EmitStatement", + "src": "4036:35:10" + } + ] + } + } + ] + }, + "documentation": "@notice Updates a videos's status from 'application' to 'listing'\n@notice or resolves a challenge if one exists.\n@param _videoId The videoId whose status is being updated", + "id": 1806, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "updateStatus", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1786, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1785, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1806, + "src": "3912:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1784, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3912:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3911:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1787, + "nodeType": "ParameterList", + "parameters": [], + "src": "3936:0:10" + }, + "scope": 1967, + "src": "3890:237:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1827, + "nodeType": "Block", + "src": "4468:123:10", + "statements": [ + { + "assignments": [ + 1812 + ], + "declarations": [ + { + "constant": false, + "id": 1812, + "name": "videoHash", + "nodeType": "VariableDeclaration", + "scope": 1828, + "src": "4478:17:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1811, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4478:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1819, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1816, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1808, + "src": "4525:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1814, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "4508:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4508:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4508:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1813, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "4498:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4498:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4478:57:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1820, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "4546:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1822, + "indexExpression": { + "argumentTypes": null, + "id": 1821, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1812, + "src": "4555:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4546:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1823, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "whitelisted", + "nodeType": "MemberAccess", + "referencedDeclaration": 1594, + "src": "4546:31:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1824, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4580:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4546:38:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1826, + "nodeType": "ExpressionStatement", + "src": "4546:38:10" + } + ] + }, + "documentation": "@dev Called by updateStatus() if the applicationExpiry date passed without a\nchallenge being made\n@dev Called by resolveChallenge() if an application/listing beat a challenge.\n@param _videoId The _videoId of an application/listing to be whitelisted", + "id": 1828, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "whitelistApplication", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1808, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1828, + "src": "4443:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1807, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4443:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "4442:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1810, + "nodeType": "ParameterList", + "parameters": [], + "src": "4468:0:10" + }, + "scope": 1967, + "src": "4413:178:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + }, + { + "body": { + "id": 1845, + "nodeType": "Block", + "src": "5006:83:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1835, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "5023:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1842, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1839, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1830, + "src": "5059:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1837, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "5042:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5042:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5042:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1836, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "5032:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5032:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5023:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1843, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "whitelisted", + "nodeType": "MemberAccess", + "referencedDeclaration": 1594, + "src": "5023:59:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1834, + "id": 1844, + "nodeType": "Return", + "src": "5016:66:10" + } + ] + }, + "documentation": "@dev returns true if video is whitelisted", + "id": 1846, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "isWhitelisted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1831, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1830, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "4950:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1829, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4950:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "4949:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1834, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1833, + "name": "whitelisted", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "4988:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1832, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4988:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "4987:18:10" + }, + "scope": 1967, + "src": "4927:162:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1865, + "nodeType": "Block", + "src": "5226:93:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1853, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "5243:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1860, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1857, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1848, + "src": "5279:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1855, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "5262:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1856, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5262:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5262:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1854, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "5252:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5252:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5243:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1861, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "applicationExpiry", + "nodeType": "MemberAccess", + "referencedDeclaration": 1592, + "src": "5243:65:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 1862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5311:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5243:69:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1852, + "id": 1864, + "nodeType": "Return", + "src": "5236:76:10" + } + ] + }, + "documentation": null, + "id": 1866, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "appWasMade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1849, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1848, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1866, + "src": "5175:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1847, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5175:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5174:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1852, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1851, + "name": "exists", + "nodeType": "VariableDeclaration", + "scope": 1866, + "src": "5213:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1850, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5213:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5212:13:10" + }, + "scope": 1967, + "src": "5155:164:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1878, + "nodeType": "Block", + "src": "5457:48:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1876, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 1873, + "name": "_termDate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1868, + "src": "5474:9:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1874, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3334, + "src": "5486:5:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5486:12:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5474:24:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1872, + "id": 1877, + "nodeType": "Return", + "src": "5467:31:10" + } + ] + }, + "documentation": "@dev returns true if the provided termDate has passed", + "id": 1879, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "isExpired", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1869, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1868, + "name": "_termDate", + "nodeType": "VariableDeclaration", + "scope": 1879, + "src": "5406:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1867, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5406:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5405:16:10" + }, + "payable": false, + "returnParameters": { + "id": 1872, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1871, + "name": "expired", + "nodeType": "VariableDeclaration", + "scope": 1879, + "src": "5443:12:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1870, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5443:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5442:14:10" + }, + "scope": 1967, + "src": "5387:118:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1886, + "nodeType": "Block", + "src": "5563:34:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1884, + "name": "minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "5580:10:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1883, + "id": 1885, + "nodeType": "Return", + "src": "5573:17:10" + } + ] + }, + "documentation": null, + "id": 1887, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getMinDeposit", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1880, + "nodeType": "ParameterList", + "parameters": [], + "src": "5533:2:10" + }, + "payable": false, + "returnParameters": { + "id": 1883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1882, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1887, + "src": "5557:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1881, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5557:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5556:6:10" + }, + "scope": 1967, + "src": "5511:86:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1924, + "nodeType": "Block", + "src": "5848:411:10", + "statements": [ + { + "assignments": [ + 1895 + ], + "declarations": [ + { + "constant": false, + "id": 1895, + "name": "videoHash", + "nodeType": "VariableDeclaration", + "scope": 1925, + "src": "5858:17:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1894, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5858:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1902, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1899, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "5905:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1897, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "5888:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5888:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5888:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1896, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "5878:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5878:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5858:57:10" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1904, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "6090:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1903, + "name": "appWasMade", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1866, + "src": "6079:10:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6079:20:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1907, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "6125:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1909, + "indexExpression": { + "argumentTypes": null, + "id": 1908, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1895, + "src": "6134:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6125:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1910, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "applicationExpiry", + "nodeType": "MemberAccess", + "referencedDeclaration": 1592, + "src": "6125:37:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1906, + "name": "isExpired", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1879, + "src": "6115:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 1911, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6115:48:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6079:84:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "id": 1916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6179:24:10", + "subExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1914, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "6194:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1913, + "name": "isWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "6180:13:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6180:23:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6079:124:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 1921, + "nodeType": "IfStatement", + "src": "6062:168:10", + "trueBody": { + "id": 1920, + "nodeType": "Block", + "src": "6214:16:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6223:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1893, + "id": 1919, + "nodeType": "Return", + "src": "6216:11:10" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 1922, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6247:5:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 1893, + "id": 1923, + "nodeType": "Return", + "src": "6240:12:10" + } + ] + }, + "documentation": "@dev Determines whether the video of an application can be whitelisted.\n@param _videoId The videoId whose status should be examined", + "id": 1925, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "canBeWhitelisted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1889, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1925, + "src": "5804:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1888, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5804:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5803:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1892, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1925, + "src": "5842:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1891, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5842:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5841:6:10" + }, + "scope": 1967, + "src": "5778:481:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1965, + "nodeType": "Block", + "src": "6454:346:10", + "statements": [ + { + "assignments": [ + 1931 + ], + "declarations": [ + { + "constant": false, + "id": 1931, + "name": "videoHash", + "nodeType": "VariableDeclaration", + "scope": 1966, + "src": "6464:17:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1930, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6464:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1938, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1935, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1927, + "src": "6511:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1933, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "6494:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6494:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6494:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1932, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "6484:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6484:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6464:57:10" + }, + { + "assignments": [ + 1940 + ], + "declarations": [ + { + "constant": false, + "id": 1940, + "name": "listing", + "nodeType": "VariableDeclaration", + "scope": 1966, + "src": "6531:23:10", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + }, + "typeName": { + "contractScope": null, + "id": 1939, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "6531:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1944, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1941, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "6557:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1943, + "indexExpression": { + "argumentTypes": null, + "id": 1942, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1931, + "src": "6566:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6557:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6531:45:10" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1945, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1940, + "src": "6652:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1946, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "unstakedDeposit", + "nodeType": "MemberAccess", + "referencedDeclaration": 1598, + "src": "6652:23:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 1947, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6678:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6652:27:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 1959, + "nodeType": "IfStatement", + "src": "6648:108:10", + "trueBody": { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1952, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1940, + "src": "6716:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1953, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "6716:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1954, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1940, + "src": "6731:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1955, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "unstakedDeposit", + "nodeType": "MemberAccess", + "referencedDeclaration": 1598, + "src": "6731:23:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1950, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1607, + "src": "6701:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 1951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 3013, + "src": "6701:14:10", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 1956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6701:54:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1949, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "6693:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6693:63:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1958, + "nodeType": "ExpressionStatement", + "src": "6693:63:10" + } + }, + { + "expression": { + "argumentTypes": null, + "id": 1963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "6767:26:10", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1960, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "6774:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1962, + "indexExpression": { + "argumentTypes": null, + "id": 1961, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1931, + "src": "6783:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6774:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1964, + "nodeType": "ExpressionStatement", + "src": "6767:26:10" + } + ] + }, + "documentation": "@dev deletes a listing from the whitelist and transfers tokens back to owner\n@param _videoId the videoId to be removed", + "id": 1966, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "resetListing", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1927, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1966, + "src": "6429:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1926, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6429:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "6428:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1929, + "nodeType": "ParameterList", + "parameters": [], + "src": "6454:0:10" + }, + "scope": 1967, + "src": "6407:393:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + } + ], + "scope": 1968, + "src": "237:6566:10" + } + ], + "src": "0:6804:10" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/TcrPlaceholder.sol", + "exportedSymbols": { + "TcrPlaceholder": [ + 1967 + ] + }, + "id": 1968, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1575, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:10" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 1576, + "nodeType": "ImportDirective", + "scope": 1968, + "sourceUnit": 2950, + "src": "26:59:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 1577, + "nodeType": "ImportDirective", + "scope": 1968, + "sourceUnit": 905, + "src": "86:28:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1578, + "nodeType": "ImportDirective", + "scope": 1968, + "sourceUnit": 1157, + "src": "115:24:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1579, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "264:7:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1580, + "nodeType": "InheritanceSpecifier", + "src": "264:7:10" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": "WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n THIS IS JUST A PLACEHOLDER..", + "fullyImplemented": true, + "id": 1967, + "linearizedBaseContracts": [ + 1967, + 2949 + ], + "name": "TcrPlaceholder", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 1586, + "name": "_Application", + "nodeType": "EventDefinition", + "parameters": { + "id": 1585, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1582, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 1586, + "src": "330:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1581, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "330:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1584, + "indexed": false, + "name": "deposit", + "nodeType": "VariableDeclaration", + "scope": 1586, + "src": "346:12:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1583, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "346:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "329:30:10" + }, + "src": "311:49:10" + }, + { + "anonymous": false, + "documentation": null, + "id": 1590, + "name": "_NewVideoWhitelisted", + "nodeType": "EventDefinition", + "parameters": { + "id": 1589, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1588, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 1590, + "src": "392:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1587, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "392:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "391:16:10" + }, + "src": "365:43:10" + }, + { + "canonicalName": "TcrPlaceholder.Listing", + "id": 1601, + "members": [ + { + "constant": false, + "id": 1592, + "name": "applicationExpiry", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "439:22:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1591, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "439:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1594, + "name": "whitelisted", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "505:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1593, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "505:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1596, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "560:13:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1595, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "560:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1598, + "name": "unstakedDeposit", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "615:20:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1597, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "615:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1600, + "name": "challengeID", + "nodeType": "VariableDeclaration", + "scope": 1601, + "src": "708:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1599, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "708:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Listing", + "nodeType": "StructDefinition", + "scope": 1967, + "src": "414:352:10", + "visibility": "public" + }, + { + "constant": false, + "id": 1605, + "name": "listings", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "819:43:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" + }, + "typeName": { + "id": 1604, + "keyType": { + "id": 1602, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "827:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "819:27:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" + }, + "valueType": { + "contractScope": null, + "id": 1603, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "838:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1607, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "869:25:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 1606, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "869:12:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1609, + "name": "minDeposit", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "900:22:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1608, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "900:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1611, + "name": "applyStageLen", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "928:25:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1610, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "928:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 1613, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 1967, + "src": "959:24:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1612, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "959:8:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 1647, + "nodeType": "Block", + "src": "1255:196:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1624, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1265:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1625, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1273:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1273:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1265:18:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1628, + "nodeType": "ExpressionStatement", + "src": "1265:18:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1629, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1613, + "src": "1293:8:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1630, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1615, + "src": "1304:9:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "1293:20:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 1632, + "nodeType": "ExpressionStatement", + "src": "1293:20:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1633, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1607, + "src": "1323:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1635, + "name": "_tokenAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1617, + "src": "1344:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1634, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "1331:12:10", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 1636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1331:24:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "src": "1323:32:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 1638, + "nodeType": "ExpressionStatement", + "src": "1323:32:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1639, + "name": "minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "1365:10:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1640, + "name": "_minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1619, + "src": "1378:11:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1365:24:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1642, + "nodeType": "ExpressionStatement", + "src": "1365:24:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1643, + "name": "applyStageLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1611, + "src": "1399:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1644, + "name": "_applyStageLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1621, + "src": "1415:14:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1399:30:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1646, + "nodeType": "ExpressionStatement", + "src": "1399:30:10" + } + ] + }, + "documentation": null, + "id": 1648, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1622, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1615, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1140:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1614, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "1140:8:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1617, + "name": "_tokenAddr", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1168:18:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1616, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1168:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1619, + "name": "_minDeposit", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1196:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1618, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1196:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1621, + "name": "_applyStageLen", + "nodeType": "VariableDeclaration", + "scope": 1648, + "src": "1222:19:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1620, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1222:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1130:117:10" + }, + "payable": false, + "returnParameters": { + "id": 1623, + "nodeType": "ParameterList", + "parameters": [], + "src": "1255:0:10" + }, + "scope": 1967, + "src": "1119:332:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1723, + "nodeType": "Block", + "src": "1818:602:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1836:24:10", + "subExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1657, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "1851:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1656, + "name": "isWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "1837:13:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1837:23:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1655, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1828:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1828:33:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1661, + "nodeType": "ExpressionStatement", + "src": "1828:33:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1879:21:10", + "subExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1664, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "1891:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1663, + "name": "appWasMade", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1866, + "src": "1880:10:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1880:20:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1662, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1871:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1871:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1668, + "nodeType": "ExpressionStatement", + "src": "1871:30:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 1670, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "1919:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "argumentTypes": null, + "id": 1671, + "name": "minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "1930:10:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1919:21:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1669, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1911:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1911:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1674, + "nodeType": "ExpressionStatement", + "src": "1911:30:10" + }, + { + "assignments": [ + 1676 + ], + "declarations": [ + { + "constant": false, + "id": 1676, + "name": "listing", + "nodeType": "VariableDeclaration", + "scope": 1724, + "src": "1973:23:10", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + }, + "typeName": { + "contractScope": null, + "id": 1675, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "1973:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1685, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1677, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "1999:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1684, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1681, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "2035:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "expression": { + "argumentTypes": null, + "id": 1679, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2018:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2018:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2018:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1678, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2008:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2008:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1999:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1973:73:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1686, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2056:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1688, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "2056:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1689, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2072:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2072:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2056:26:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1692, + "nodeType": "ExpressionStatement", + "src": "2056:26:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1696, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2184:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1697, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "2184:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1698, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3393, + "src": "2199:4:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", + "typeString": "contract TcrPlaceholder" + } + }, + { + "argumentTypes": null, + "id": 1699, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "2205:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", + "typeString": "contract TcrPlaceholder" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1694, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1607, + "src": "2165:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 1695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 3183, + "src": "2165:18:10", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" + } + }, + "id": 1700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2165:48:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1693, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "2157:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2157:57:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1702, + "nodeType": "ExpressionStatement", + "src": "2157:57:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1703, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2267:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1705, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "applicationExpiry", + "nodeType": "MemberAccess", + "referencedDeclaration": 1592, + "src": "2267:25:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1706, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3334, + "src": "2295:5:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2295:12:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "id": 1708, + "name": "applyStageLen", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1611, + "src": "2310:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2295:28:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2267:56:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1711, + "nodeType": "ExpressionStatement", + "src": "2267:56:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1712, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "2333:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1714, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "unstakedDeposit", + "nodeType": "MemberAccess", + "referencedDeclaration": 1598, + "src": "2333:23:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1715, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "2359:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2333:33:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1717, + "nodeType": "ExpressionStatement", + "src": "2333:33:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1719, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1650, + "src": "2395:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "argumentTypes": null, + "id": 1720, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1652, + "src": "2405:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1718, + "name": "_Application", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1586, + "src": "2382:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2382:31:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1722, + "nodeType": "EmitStatement", + "src": "2377:36:10" + } + ] + }, + "documentation": "allow video creator to apply for whitelisting for a video.\n@param _videoId the videoId\n@param _amount the amount to Stake", + "id": 1724, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "apply", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1653, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1650, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1724, + "src": "1778:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1649, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1778:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1652, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 1724, + "src": "1795:12:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1651, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1795:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1777:31:10" + }, + "payable": false, + "returnParameters": { + "id": 1654, + "nodeType": "ParameterList", + "parameters": [], + "src": "1818:0:10" + }, + "scope": 1967, + "src": "1763:657:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1729, + "nodeType": "Block", + "src": "2632:8:10", + "statements": [] + }, + "documentation": "deposit an amount of tokens. (unstaked)\n@param amount the amount to deposit\n@return {EVENT} returns event log of deposit event.", + "id": 1730, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "deposit", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1727, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1726, + "name": "amount", + "nodeType": "VariableDeclaration", + "scope": 1730, + "src": "2610:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1725, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2610:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2609:13:10" + }, + "payable": false, + "returnParameters": { + "id": 1728, + "nodeType": "ParameterList", + "parameters": [], + "src": "2632:0:10" + }, + "scope": 1967, + "src": "2593:47:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1735, + "nodeType": "Block", + "src": "2806:8:10", + "statements": [] + }, + "documentation": "take out an amount of tokens from the unstaked tokens.\n@param amount the amount to take out", + "id": 1736, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "withdraw", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1733, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1732, + "name": "amount", + "nodeType": "VariableDeclaration", + "scope": 1736, + "src": "2784:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1731, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2784:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2783:13:10" + }, + "payable": false, + "returnParameters": { + "id": 1734, + "nodeType": "ParameterList", + "parameters": [], + "src": "2806:0:10" + }, + "scope": 1967, + "src": "2766:48:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1770, + "nodeType": "Block", + "src": "2996:439:10", + "statements": [ + { + "assignments": [ + 1742 + ], + "declarations": [ + { + "constant": false, + "id": 1742, + "name": "listing", + "nodeType": "VariableDeclaration", + "scope": 1771, + "src": "3006:23:10", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + }, + "typeName": { + "contractScope": null, + "id": 1741, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "3006:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1751, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1743, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "3032:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1750, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1747, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1738, + "src": "3068:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "expression": { + "argumentTypes": null, + "id": 1745, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3051:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3051:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3051:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1744, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3041:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3041:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3032:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3006:73:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1753, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "3098:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3098:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1755, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1742, + "src": "3112:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1756, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "3112:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3098:27:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1752, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "3090:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3090:36:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1759, + "nodeType": "ExpressionStatement", + "src": "3090:36:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1762, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1738, + "src": "3158:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1761, + "name": "isWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "3144:13:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1763, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3144:23:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1760, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "3136:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3136:32:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1765, + "nodeType": "ExpressionStatement", + "src": "3136:32:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1767, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1738, + "src": "3419:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1766, + "name": "resetListing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1966, + "src": "3406:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1768, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3406:22:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1769, + "nodeType": "ExpressionStatement", + "src": "3406:22:10" + } + ] + }, + "documentation": "allow video creator to remove a video from the listing and return tokens.\n@param _videoId videoId to remove", + "id": 1771, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "exit", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1739, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1738, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1771, + "src": "2970:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1737, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2970:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2969:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1740, + "nodeType": "ParameterList", + "parameters": [], + "src": "2996:0:10" + }, + "scope": 1967, + "src": "2956:479:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "external" + }, + { + "body": { + "id": 1782, + "nodeType": "Block", + "src": "3618:39:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1779, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1773, + "src": "3641:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1778, + "name": "resetListing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1966, + "src": "3628:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3628:22:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1781, + "nodeType": "ExpressionStatement", + "src": "3628:22:10" + } + ] + }, + "documentation": "remove a video , Only the TCR owner can do this.\n@param _videoId id of the video to remove.", + "id": 1783, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 1776, + "modifierName": { + "argumentTypes": null, + "id": 1775, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2923, + "src": "3608:9:10", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "3608:9:10" + } + ], + "name": "removeListing", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1774, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1773, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1783, + "src": "3584:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1772, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3584:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3583:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1777, + "nodeType": "ParameterList", + "parameters": [], + "src": "3618:0:10" + }, + "scope": 1967, + "src": "3561:96:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1805, + "nodeType": "Block", + "src": "3936:191:10", + "statements": [ + { + "condition": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1789, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1785, + "src": "3967:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1788, + "name": "canBeWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "3950:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3950:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1803, + "nodeType": "Block", + "src": "4088:33:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1800, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3349, + 3350 + ], + "referencedDeclaration": 3349, + "src": "4102:6:10", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4102:8:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1802, + "nodeType": "ExpressionStatement", + "src": "4102:8:10" + } + ] + }, + "id": 1804, + "nodeType": "IfStatement", + "src": "3946:175:10", + "trueBody": { + "id": 1799, + "nodeType": "Block", + "src": "3978:104:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1792, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1785, + "src": "4013:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1791, + "name": "whitelistApplication", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1828, + "src": "3992:20:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3992:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1794, + "nodeType": "ExpressionStatement", + "src": "3992:30:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1796, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1785, + "src": "4062:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1795, + "name": "_NewVideoWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1590, + "src": "4041:20:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4041:30:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1798, + "nodeType": "EmitStatement", + "src": "4036:35:10" + } + ] + } + } + ] + }, + "documentation": "@notice Updates a videos's status from 'application' to 'listing'\n@notice or resolves a challenge if one exists.\n@param _videoId The videoId whose status is being updated", + "id": 1806, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "updateStatus", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1786, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1785, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1806, + "src": "3912:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1784, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3912:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3911:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1787, + "nodeType": "ParameterList", + "parameters": [], + "src": "3936:0:10" + }, + "scope": 1967, + "src": "3890:237:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1827, + "nodeType": "Block", + "src": "4468:123:10", + "statements": [ + { + "assignments": [ + 1812 + ], + "declarations": [ + { + "constant": false, + "id": 1812, + "name": "videoHash", + "nodeType": "VariableDeclaration", + "scope": 1828, + "src": "4478:17:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1811, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4478:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1819, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1816, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1808, + "src": "4525:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1814, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "4508:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4508:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4508:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1813, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "4498:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4498:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4478:57:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 1825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1820, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "4546:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1822, + "indexExpression": { + "argumentTypes": null, + "id": 1821, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1812, + "src": "4555:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4546:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1823, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "whitelisted", + "nodeType": "MemberAccess", + "referencedDeclaration": 1594, + "src": "4546:31:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1824, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4580:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4546:38:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1826, + "nodeType": "ExpressionStatement", + "src": "4546:38:10" + } + ] + }, + "documentation": "@dev Called by updateStatus() if the applicationExpiry date passed without a\nchallenge being made\n@dev Called by resolveChallenge() if an application/listing beat a challenge.\n@param _videoId The _videoId of an application/listing to be whitelisted", + "id": 1828, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "whitelistApplication", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1808, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1828, + "src": "4443:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1807, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4443:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "4442:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1810, + "nodeType": "ParameterList", + "parameters": [], + "src": "4468:0:10" + }, + "scope": 1967, + "src": "4413:178:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + }, + { + "body": { + "id": 1845, + "nodeType": "Block", + "src": "5006:83:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1835, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "5023:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1842, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1839, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1830, + "src": "5059:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1837, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "5042:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5042:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5042:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1836, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "5032:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5032:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5023:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1843, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "whitelisted", + "nodeType": "MemberAccess", + "referencedDeclaration": 1594, + "src": "5023:59:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1834, + "id": 1844, + "nodeType": "Return", + "src": "5016:66:10" + } + ] + }, + "documentation": "@dev returns true if video is whitelisted", + "id": 1846, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "isWhitelisted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1831, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1830, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "4950:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1829, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4950:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "4949:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1834, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1833, + "name": "whitelisted", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "4988:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1832, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4988:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "4987:18:10" + }, + "scope": 1967, + "src": "4927:162:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1865, + "nodeType": "Block", + "src": "5226:93:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1853, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "5243:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1860, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1857, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1848, + "src": "5279:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1855, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "5262:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1856, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5262:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5262:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1854, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "5252:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5252:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5243:47:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1861, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "applicationExpiry", + "nodeType": "MemberAccess", + "referencedDeclaration": 1592, + "src": "5243:65:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 1862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5311:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5243:69:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1852, + "id": 1864, + "nodeType": "Return", + "src": "5236:76:10" + } + ] + }, + "documentation": null, + "id": 1866, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "appWasMade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1849, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1848, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1866, + "src": "5175:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1847, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5175:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5174:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1852, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1851, + "name": "exists", + "nodeType": "VariableDeclaration", + "scope": 1866, + "src": "5213:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1850, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5213:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5212:13:10" + }, + "scope": 1967, + "src": "5155:164:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1878, + "nodeType": "Block", + "src": "5457:48:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1876, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 1873, + "name": "_termDate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1868, + "src": "5474:9:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1874, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3334, + "src": "5486:5:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5486:12:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5474:24:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 1872, + "id": 1877, + "nodeType": "Return", + "src": "5467:31:10" + } + ] + }, + "documentation": "@dev returns true if the provided termDate has passed", + "id": 1879, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "isExpired", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1869, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1868, + "name": "_termDate", + "nodeType": "VariableDeclaration", + "scope": 1879, + "src": "5406:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1867, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5406:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5405:16:10" + }, + "payable": false, + "returnParameters": { + "id": 1872, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1871, + "name": "expired", + "nodeType": "VariableDeclaration", + "scope": 1879, + "src": "5443:12:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1870, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5443:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5442:14:10" + }, + "scope": 1967, + "src": "5387:118:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1886, + "nodeType": "Block", + "src": "5563:34:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1884, + "name": "minDeposit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1609, + "src": "5580:10:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1883, + "id": 1885, + "nodeType": "Return", + "src": "5573:17:10" + } + ] + }, + "documentation": null, + "id": 1887, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getMinDeposit", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1880, + "nodeType": "ParameterList", + "parameters": [], + "src": "5533:2:10" + }, + "payable": false, + "returnParameters": { + "id": 1883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1882, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1887, + "src": "5557:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1881, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5557:4:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5556:6:10" + }, + "scope": 1967, + "src": "5511:86:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1924, + "nodeType": "Block", + "src": "5848:411:10", + "statements": [ + { + "assignments": [ + 1895 + ], + "declarations": [ + { + "constant": false, + "id": 1895, + "name": "videoHash", + "nodeType": "VariableDeclaration", + "scope": 1925, + "src": "5858:17:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1894, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5858:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1902, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1899, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "5905:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1897, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "5888:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5888:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5888:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1896, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "5878:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5878:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5858:57:10" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1904, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "6090:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1903, + "name": "appWasMade", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1866, + "src": "6079:10:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6079:20:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1907, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "6125:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1909, + "indexExpression": { + "argumentTypes": null, + "id": 1908, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1895, + "src": "6134:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6125:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "id": 1910, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "applicationExpiry", + "nodeType": "MemberAccess", + "referencedDeclaration": 1592, + "src": "6125:37:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1906, + "name": "isExpired", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1879, + "src": "6115:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256) view returns (bool)" + } + }, + "id": 1911, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6115:48:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6079:84:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "argumentTypes": null, + "id": 1916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6179:24:10", + "subExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1914, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "6194:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1913, + "name": "isWhitelisted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1846, + "src": "6180:13:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_bool_$", + "typeString": "function (string memory) view returns (bool)" + } + }, + "id": 1915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6180:23:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6079:124:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 1921, + "nodeType": "IfStatement", + "src": "6062:168:10", + "trueBody": { + "id": 1920, + "nodeType": "Block", + "src": "6214:16:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 1918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6223:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 1893, + "id": 1919, + "nodeType": "Return", + "src": "6216:11:10" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 1922, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6247:5:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 1893, + "id": 1923, + "nodeType": "Return", + "src": "6240:12:10" + } + ] + }, + "documentation": "@dev Determines whether the video of an application can be whitelisted.\n@param _videoId The videoId whose status should be examined", + "id": 1925, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "canBeWhitelisted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1889, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1925, + "src": "5804:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1888, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5804:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5803:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1892, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1925, + "src": "5842:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1891, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5842:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "5841:6:10" + }, + "scope": 1967, + "src": "5778:481:10", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1965, + "nodeType": "Block", + "src": "6454:346:10", + "statements": [ + { + "assignments": [ + 1931 + ], + "declarations": [ + { + "constant": false, + "id": 1931, + "name": "videoHash", + "nodeType": "VariableDeclaration", + "scope": 1966, + "src": "6464:17:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1930, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "6464:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1938, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1935, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1927, + "src": "6511:8:10", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1933, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "6494:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6494:16:10", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6494:26:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1932, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "6484:9:10", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 1937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6484:37:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6464:57:10" + }, + { + "assignments": [ + 1940 + ], + "declarations": [ + { + "constant": false, + "id": 1940, + "name": "listing", + "nodeType": "VariableDeclaration", + "scope": 1966, + "src": "6531:23:10", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + }, + "typeName": { + "contractScope": null, + "id": 1939, + "name": "Listing", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1601, + "src": "6531:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1944, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1941, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "6557:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1943, + "indexExpression": { + "argumentTypes": null, + "id": 1942, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1931, + "src": "6566:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6557:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6531:45:10" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1945, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1940, + "src": "6652:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1946, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "unstakedDeposit", + "nodeType": "MemberAccess", + "referencedDeclaration": 1598, + "src": "6652:23:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 1947, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6678:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6652:27:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 1959, + "nodeType": "IfStatement", + "src": "6648:108:10", + "trueBody": { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1952, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1940, + "src": "6716:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1953, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 1596, + "src": "6716:13:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1954, + "name": "listing", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1940, + "src": "6731:7:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", + "typeString": "struct TcrPlaceholder.Listing storage pointer" + } + }, + "id": 1955, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "unstakedDeposit", + "nodeType": "MemberAccess", + "referencedDeclaration": 1598, + "src": "6731:23:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1950, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1607, + "src": "6701:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 1951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 3013, + "src": "6701:14:10", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 1956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6701:54:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1949, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "6693:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6693:63:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1958, + "nodeType": "ExpressionStatement", + "src": "6693:63:10" + } + }, + { + "expression": { + "argumentTypes": null, + "id": 1963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "6767:26:10", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 1960, + "name": "listings", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1605, + "src": "6774:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", + "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" + } + }, + "id": 1962, + "indexExpression": { + "argumentTypes": null, + "id": 1961, + "name": "videoHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1931, + "src": "6783:9:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6774:19:10", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Listing_$1601_storage", + "typeString": "struct TcrPlaceholder.Listing storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1964, + "nodeType": "ExpressionStatement", + "src": "6767:26:10" + } + ] + }, + "documentation": "@dev deletes a listing from the whitelist and transfers tokens back to owner\n@param _videoId the videoId to be removed", + "id": 1966, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "resetListing", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1927, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 1966, + "src": "6429:15:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1926, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6429:6:10", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "6428:17:10" + }, + "payable": false, + "returnParameters": { + "id": 1929, + "nodeType": "ParameterList", + "parameters": [], + "src": "6454:0:10" + }, + "scope": 1967, + "src": "6407:393:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "private" + } + ], + "scope": 1968, + "src": "237:6566:10" + } + ], + "src": "0:6804:10" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.057Z" +} \ No newline at end of file diff --git a/build/contracts/Users.json b/build/contracts/Users.json index a446ca1..daba114 100644 --- a/build/contracts/Users.json +++ b/build/contracts/Users.json @@ -1 +1,3761 @@ -{"contractName":"Users","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"users","outputs":[{"name":"name","type":"string"},{"name":"email","type":"string"},{"name":"ipfsData","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_name","type":"string"},{"indexed":false,"name":"_email","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"}],"name":"LogRemoveUser","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_name","type":"string"},{"name":"_email","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"get","outputs":[{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a72305820214ea8dddd1ff78be5f80fc837bf219ce602af83a5153264b2714f26d322980e0029"} \ No newline at end of file +{ + "contractName": "Users", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "address" + } + ], + "name": "users", + "outputs": [ + { + "name": "name", + "type": "string" + }, + { + "name": "email", + "type": "string" + }, + { + "name": "ipfsData", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "name": "_registry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "_address", + "type": "address" + }, + { + "indexed": false, + "name": "_name", + "type": "string" + }, + { + "indexed": false, + "name": "_email", + "type": "string" + }, + { + "indexed": false, + "name": "_ipfsData", + "type": "string" + } + ], + "name": "LogCreateUser", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "_address", + "type": "address" + } + ], + "name": "LogRemoveUser", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_address", + "type": "address" + }, + { + "name": "_name", + "type": "string" + }, + { + "name": "_email", + "type": "string" + }, + { + "name": "_ipfsData", + "type": "string" + } + ], + "name": "create", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "remove", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_address", + "type": "address" + } + ], + "name": "get", + "outputs": [ + { + "name": "", + "type": "string" + }, + { + "name": "", + "type": "string" + }, + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a723058208f3e9697a9fa6959f4c7f9bc6cf9c0d18f919936b6b48a9fb0fc6ca4038eccbe0029", + "deployedBytecode": "0x608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a723058208f3e9697a9fa6959f4c7f9bc6cf9c0d18f919936b6b48a9fb0fc6ca4038eccbe0029", + "sourceMap": "112:1951:11:-;;;633:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;633:104:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;690:10:11;682:5;;:18;;;;;;;;;;;;;;;;;;721:9;710:8;;:20;;;;;;;;;;;;;;;;;;633:104;112:1951;;;;;;", + "deployedSourceMap": "112:1951:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1553:144;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1553:144:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;1018:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1018:370:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;266:40:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;266:40:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1859:202;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1859:202:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1553:144:11;1610:8;577:5;;;;;;;;;;;563:19;;:10;:19;;;:45;;;;600:8;586:22;;:10;:22;;;563:45;555:54;;;;;;;;1637:5;:15;1643:8;1637:15;;;;;;;;;;;;;;;;1630:22;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;1681:8;1667:23;;;;;;;;;;;;1553:144;;:::o;1018:370::-;1168:8;577:5;;;;;;;;;;;563:19;;:10;:19;;;:45;;;;600:8;586:22;;:10;:22;;;563:45;555:54;;;;;;;;1211:105;;;;;;;;;1240:5;1211:105;;;;1266:6;1211:105;;;;1296:9;1211:105;;;1193:5;:15;1199:8;1193:15;;;;;;;;;;;;;;;:123;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;1346:8;1332:49;;;1356:5;1363:6;1371:9;1332:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1332:49:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1332:49:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1332:49:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1018:370;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;266:40:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1859:202::-;1910:6;1918;1926;1944:25;1972:5;:15;1978:8;1972:15;;;;;;;;;;;;;;;1944:43;;2005:8;:13;;2020:8;:14;;2036:8;:17;;1997:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1859:202;;;;;;:::o;827:169:16:-;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;112:1951:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./Registry.sol\";\n\ncontract Users is Ownable {\n\n Registry registry;\n\n struct UserInfo {\n string name;\n string email;\n string ipfsData;\n }\n\n mapping (address=>UserInfo) public users;\n\n event LogCreateUser(\n address indexed _address,\n string _name,\n string _email,\n string _ipfsData\n );\n\n event LogRemoveUser(address indexed _address);\n\n modifier onlyOwnerOrUser(address _address) {\n require(msg.sender == owner || msg.sender == _address);\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n /**\n * @dev Register a new user\n * @param _address - the ethereum address of the user\n * @param _name - the name of the user\n * @param _email - the email address of the user\n * @param _ipfsData - the hash of a JSON file with data of the video\n */\n function create(\n address _address,\n string _name,\n string _email,\n string _ipfsData\n )\n public onlyOwnerOrUser(_address) \n {\n users[_address] = UserInfo({\n name: _name,\n email: _email,\n ipfsData: _ipfsData\n });\n\n emit LogCreateUser(_address, _name, _email, _ipfsData);\n }\n\n /**\n * @dev unregister a User\n * Deletes the data of the user from users\n * @param _address the address of the user to be unregistered\n */\n function remove(address _address) public onlyOwnerOrUser(_address) {\n delete users[_address];\n emit LogRemoveUser(_address);\n }\n\n /**\n * @dev return information about the user\n * @param _address the address of the user\n * @return a tuple (name, email, ipfsData)\n */\n function get(address _address) public view returns(string, string, string) {\n UserInfo storage userInfo = users[_address];\n return (userInfo.name, userInfo.email, userInfo.ipfsData);\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", + "exportedSymbols": { + "Users": [ + 2110 + ] + }, + "id": 2111, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1969, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:11" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 1970, + "nodeType": "ImportDirective", + "scope": 2111, + "sourceUnit": 2950, + "src": "26:59:11", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1971, + "nodeType": "ImportDirective", + "scope": 2111, + "sourceUnit": 1157, + "src": "86:24:11", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1972, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "130:7:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1973, + "nodeType": "InheritanceSpecifier", + "src": "130:7:11" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2110, + "linearizedBaseContracts": [ + 2110, + 2949 + ], + "name": "Users", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1975, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 2110, + "src": "145:17:11", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1974, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "145:8:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + }, + { + "canonicalName": "Users.UserInfo", + "id": 1982, + "members": [ + { + "constant": false, + "id": 1977, + "name": "name", + "nodeType": "VariableDeclaration", + "scope": 1982, + "src": "195:11:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1976, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "195:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1979, + "name": "email", + "nodeType": "VariableDeclaration", + "scope": 1982, + "src": "216:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1978, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "216:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1981, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1982, + "src": "238:15:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1980, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "238:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "UserInfo", + "nodeType": "StructDefinition", + "scope": 2110, + "src": "169:91:11", + "visibility": "public" + }, + { + "constant": false, + "id": 1986, + "name": "users", + "nodeType": "VariableDeclaration", + "scope": 2110, + "src": "266:40:11", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo)" + }, + "typeName": { + "id": 1985, + "keyType": { + "id": 1983, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "275:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "266:27:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo)" + }, + "valueType": { + "contractScope": null, + "id": 1984, + "name": "UserInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1982, + "src": "284:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 1996, + "name": "LogCreateUser", + "nodeType": "EventDefinition", + "parameters": { + "id": 1995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1988, + "indexed": true, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "342:24:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1987, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "342:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1990, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "376:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1989, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "376:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1992, + "indexed": false, + "name": "_email", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "398:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1991, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "398:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1994, + "indexed": false, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "421:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1993, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "421:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "332:111:11" + }, + "src": "313:131:11" + }, + { + "anonymous": false, + "documentation": null, + "id": 2000, + "name": "LogRemoveUser", + "nodeType": "EventDefinition", + "parameters": { + "id": 1999, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1998, + "indexed": true, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2000, + "src": "470:24:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1997, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "470:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "469:26:11" + }, + "src": "450:46:11" + }, + { + "body": { + "id": 2017, + "nodeType": "Block", + "src": "545:82:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2005, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "563:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "563:10:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2007, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "577:5:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "563:19:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2009, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "586:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "586:10:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2011, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2002, + "src": "600:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "586:22:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "563:45:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2004, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "555:7:11", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "555:54:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2015, + "nodeType": "ExpressionStatement", + "src": "555:54:11" + }, + { + "id": 2016, + "nodeType": "PlaceholderStatement", + "src": "619:1:11" + } + ] + }, + "documentation": null, + "id": 2018, + "name": "onlyOwnerOrUser", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2003, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2002, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2018, + "src": "527:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2001, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "527:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "526:18:11" + }, + "src": "502:125:11", + "visibility": "internal" + }, + { + "body": { + "id": 2032, + "nodeType": "Block", + "src": "672:65:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2023, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "682:5:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2024, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "690:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "690:10:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "682:18:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2027, + "nodeType": "ExpressionStatement", + "src": "682:18:11" + }, + { + "expression": { + "argumentTypes": null, + "id": 2030, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2028, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1975, + "src": "710:8:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2029, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2020, + "src": "721:9:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "710:20:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2031, + "nodeType": "ExpressionStatement", + "src": "710:20:11" + } + ] + }, + "documentation": null, + "id": 2033, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2021, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2020, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 2033, + "src": "645:18:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2019, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "645:8:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "644:20:11" + }, + "payable": false, + "returnParameters": { + "id": 2022, + "nodeType": "ParameterList", + "parameters": [], + "src": "672:0:11" + }, + "scope": 2110, + "src": "633:104:11", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2064, + "nodeType": "Block", + "src": "1183:205:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2047, + "name": "users", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1986, + "src": "1193:5:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo storage ref)" + } + }, + "id": 2049, + "indexExpression": { + "argumentTypes": null, + "id": 2048, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "1199:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1193:15:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2051, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2037, + "src": "1240:5:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2052, + "name": "_email", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2039, + "src": "1266:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2053, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2041, + "src": "1296:9:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": null, + "id": 2050, + "name": "UserInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1982, + "src": "1211:8:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_UserInfo_$1982_storage_ptr_$", + "typeString": "type(struct Users.UserInfo storage pointer)" + } + }, + "id": 2054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [ + "name", + "email", + "ipfsData" + ], + "nodeType": "FunctionCall", + "src": "1211:105:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_memory", + "typeString": "struct Users.UserInfo memory" + } + }, + "src": "1193:123:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "id": 2056, + "nodeType": "ExpressionStatement", + "src": "1193:123:11" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2058, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "1346:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2059, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2037, + "src": "1356:5:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2060, + "name": "_email", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2039, + "src": "1363:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2061, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2041, + "src": "1371:9:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2057, + "name": "LogCreateUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1996, + "src": "1332:13:11", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,string memory,string memory)" + } + }, + "id": 2062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1332:49:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2063, + "nodeType": "EmitStatement", + "src": "1327:54:11" + } + ] + }, + "documentation": "@dev Register a new user\n@param _address - the ethereum address of the user\n@param _name - the name of the user\n@param _email - the email address of the user\n@param _ipfsData - the hash of a JSON file with data of the video", + "id": 2065, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2044, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "1168:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2045, + "modifierName": { + "argumentTypes": null, + "id": 2043, + "name": "onlyOwnerOrUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2018, + "src": "1152:15:11", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" + } + }, + "nodeType": "ModifierInvocation", + "src": "1152:25:11" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2042, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2035, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1043:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2034, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1043:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2037, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1069:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2036, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1069:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2039, + "name": "_email", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1091:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2038, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1091:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2041, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1114:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2040, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1114:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1033:103:11" + }, + "payable": false, + "returnParameters": { + "id": 2046, + "nodeType": "ParameterList", + "parameters": [], + "src": "1183:0:11" + }, + "scope": 2110, + "src": "1018:370:11", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2082, + "nodeType": "Block", + "src": "1620:77:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1630:22:11", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2073, + "name": "users", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1986, + "src": "1637:5:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo storage ref)" + } + }, + "id": 2075, + "indexExpression": { + "argumentTypes": null, + "id": 2074, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "1643:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1637:15:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2077, + "nodeType": "ExpressionStatement", + "src": "1630:22:11" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2079, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "1681:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2078, + "name": "LogRemoveUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2000, + "src": "1667:13:11", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 2080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1667:23:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2081, + "nodeType": "EmitStatement", + "src": "1662:28:11" + } + ] + }, + "documentation": "@dev unregister a User\nDeletes the data of the user from users\n@param _address the address of the user to be unregistered", + "id": 2083, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2070, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "1610:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2071, + "modifierName": { + "argumentTypes": null, + "id": 2069, + "name": "onlyOwnerOrUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2018, + "src": "1594:15:11", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" + } + }, + "nodeType": "ModifierInvocation", + "src": "1594:25:11" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2068, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2067, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2083, + "src": "1569:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2066, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1569:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1568:18:11" + }, + "payable": false, + "returnParameters": { + "id": 2072, + "nodeType": "ParameterList", + "parameters": [], + "src": "1620:0:11" + }, + "scope": 2110, + "src": "1553:144:11", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2108, + "nodeType": "Block", + "src": "1934:127:11", + "statements": [ + { + "assignments": [ + 2095 + ], + "declarations": [ + { + "constant": false, + "id": 2095, + "name": "userInfo", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1944:25:11", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo" + }, + "typeName": { + "contractScope": null, + "id": 2094, + "name": "UserInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1982, + "src": "1944:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2099, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2096, + "name": "users", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1986, + "src": "1972:5:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo storage ref)" + } + }, + "id": 2098, + "indexExpression": { + "argumentTypes": null, + "id": 2097, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2085, + "src": "1978:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1972:15:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1944:43:11" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2100, + "name": "userInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "2005:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo storage pointer" + } + }, + "id": 2101, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 1977, + "src": "2005:13:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2102, + "name": "userInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "2020:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo storage pointer" + } + }, + "id": 2103, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "email", + "nodeType": "MemberAccess", + "referencedDeclaration": 1979, + "src": "2020:14:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2104, + "name": "userInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "2036:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo storage pointer" + } + }, + "id": 2105, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 1981, + "src": "2036:17:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "id": 2106, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2004:50:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_string_storage_$_t_string_storage_$_t_string_storage_$", + "typeString": "tuple(string storage ref,string storage ref,string storage ref)" + } + }, + "functionReturnParameters": 2093, + "id": 2107, + "nodeType": "Return", + "src": "1997:57:11" + } + ] + }, + "documentation": "@dev return information about the user\n@param _address the address of the user\n@return a tuple (name, email, ipfsData)", + "id": 2109, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2085, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1872:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1872:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1871:18:11" + }, + "payable": false, + "returnParameters": { + "id": 2093, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2088, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1910:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2087, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1910:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2090, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1918:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2089, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1918:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2092, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1926:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2091, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1926:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1909:24:11" + }, + "scope": 2110, + "src": "1859:202:11", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2111, + "src": "112:1951:11" + } + ], + "src": "0:2064:11" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", + "exportedSymbols": { + "Users": [ + 2110 + ] + }, + "id": 2111, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1969, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:11" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 1970, + "nodeType": "ImportDirective", + "scope": 2111, + "sourceUnit": 2950, + "src": "26:59:11", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 1971, + "nodeType": "ImportDirective", + "scope": 2111, + "sourceUnit": 1157, + "src": "86:24:11", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 1972, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "130:7:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 1973, + "nodeType": "InheritanceSpecifier", + "src": "130:7:11" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2110, + "linearizedBaseContracts": [ + 2110, + 2949 + ], + "name": "Users", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1975, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 2110, + "src": "145:17:11", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 1974, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "145:8:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + }, + { + "canonicalName": "Users.UserInfo", + "id": 1982, + "members": [ + { + "constant": false, + "id": 1977, + "name": "name", + "nodeType": "VariableDeclaration", + "scope": 1982, + "src": "195:11:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1976, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "195:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1979, + "name": "email", + "nodeType": "VariableDeclaration", + "scope": 1982, + "src": "216:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1978, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "216:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1981, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1982, + "src": "238:15:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1980, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "238:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "UserInfo", + "nodeType": "StructDefinition", + "scope": 2110, + "src": "169:91:11", + "visibility": "public" + }, + { + "constant": false, + "id": 1986, + "name": "users", + "nodeType": "VariableDeclaration", + "scope": 2110, + "src": "266:40:11", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo)" + }, + "typeName": { + "id": 1985, + "keyType": { + "id": 1983, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "275:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "266:27:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo)" + }, + "valueType": { + "contractScope": null, + "id": 1984, + "name": "UserInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1982, + "src": "284:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 1996, + "name": "LogCreateUser", + "nodeType": "EventDefinition", + "parameters": { + "id": 1995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1988, + "indexed": true, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "342:24:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1987, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "342:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1990, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "376:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1989, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "376:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1992, + "indexed": false, + "name": "_email", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "398:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1991, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "398:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1994, + "indexed": false, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 1996, + "src": "421:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1993, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "421:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "332:111:11" + }, + "src": "313:131:11" + }, + { + "anonymous": false, + "documentation": null, + "id": 2000, + "name": "LogRemoveUser", + "nodeType": "EventDefinition", + "parameters": { + "id": 1999, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1998, + "indexed": true, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2000, + "src": "470:24:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1997, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "470:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "469:26:11" + }, + "src": "450:46:11" + }, + { + "body": { + "id": 2017, + "nodeType": "Block", + "src": "545:82:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2005, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "563:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "563:10:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2007, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "577:5:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "563:19:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2009, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "586:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "586:10:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2011, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2002, + "src": "600:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "586:22:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "563:45:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2004, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "555:7:11", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "555:54:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2015, + "nodeType": "ExpressionStatement", + "src": "555:54:11" + }, + { + "id": 2016, + "nodeType": "PlaceholderStatement", + "src": "619:1:11" + } + ] + }, + "documentation": null, + "id": 2018, + "name": "onlyOwnerOrUser", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2003, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2002, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2018, + "src": "527:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2001, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "527:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "526:18:11" + }, + "src": "502:125:11", + "visibility": "internal" + }, + { + "body": { + "id": 2032, + "nodeType": "Block", + "src": "672:65:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2023, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "682:5:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2024, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "690:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "690:10:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "682:18:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2027, + "nodeType": "ExpressionStatement", + "src": "682:18:11" + }, + { + "expression": { + "argumentTypes": null, + "id": 2030, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2028, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1975, + "src": "710:8:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2029, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2020, + "src": "721:9:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "710:20:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2031, + "nodeType": "ExpressionStatement", + "src": "710:20:11" + } + ] + }, + "documentation": null, + "id": 2033, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2021, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2020, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 2033, + "src": "645:18:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2019, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "645:8:11", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "644:20:11" + }, + "payable": false, + "returnParameters": { + "id": 2022, + "nodeType": "ParameterList", + "parameters": [], + "src": "672:0:11" + }, + "scope": 2110, + "src": "633:104:11", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2064, + "nodeType": "Block", + "src": "1183:205:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2047, + "name": "users", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1986, + "src": "1193:5:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo storage ref)" + } + }, + "id": 2049, + "indexExpression": { + "argumentTypes": null, + "id": 2048, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "1199:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1193:15:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2051, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2037, + "src": "1240:5:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2052, + "name": "_email", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2039, + "src": "1266:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2053, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2041, + "src": "1296:9:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": null, + "id": 2050, + "name": "UserInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1982, + "src": "1211:8:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_UserInfo_$1982_storage_ptr_$", + "typeString": "type(struct Users.UserInfo storage pointer)" + } + }, + "id": 2054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [ + "name", + "email", + "ipfsData" + ], + "nodeType": "FunctionCall", + "src": "1211:105:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_memory", + "typeString": "struct Users.UserInfo memory" + } + }, + "src": "1193:123:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "id": 2056, + "nodeType": "ExpressionStatement", + "src": "1193:123:11" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2058, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "1346:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2059, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2037, + "src": "1356:5:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2060, + "name": "_email", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2039, + "src": "1363:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2061, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2041, + "src": "1371:9:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2057, + "name": "LogCreateUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1996, + "src": "1332:13:11", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,string memory,string memory)" + } + }, + "id": 2062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1332:49:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2063, + "nodeType": "EmitStatement", + "src": "1327:54:11" + } + ] + }, + "documentation": "@dev Register a new user\n@param _address - the ethereum address of the user\n@param _name - the name of the user\n@param _email - the email address of the user\n@param _ipfsData - the hash of a JSON file with data of the video", + "id": 2065, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2044, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2035, + "src": "1168:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2045, + "modifierName": { + "argumentTypes": null, + "id": 2043, + "name": "onlyOwnerOrUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2018, + "src": "1152:15:11", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" + } + }, + "nodeType": "ModifierInvocation", + "src": "1152:25:11" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2042, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2035, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1043:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2034, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1043:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2037, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1069:12:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2036, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1069:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2039, + "name": "_email", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1091:13:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2038, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1091:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2041, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2065, + "src": "1114:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2040, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1114:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1033:103:11" + }, + "payable": false, + "returnParameters": { + "id": 2046, + "nodeType": "ParameterList", + "parameters": [], + "src": "1183:0:11" + }, + "scope": 2110, + "src": "1018:370:11", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2082, + "nodeType": "Block", + "src": "1620:77:11", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1630:22:11", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2073, + "name": "users", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1986, + "src": "1637:5:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo storage ref)" + } + }, + "id": 2075, + "indexExpression": { + "argumentTypes": null, + "id": 2074, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "1643:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1637:15:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2077, + "nodeType": "ExpressionStatement", + "src": "1630:22:11" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2079, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "1681:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2078, + "name": "LogRemoveUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2000, + "src": "1667:13:11", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 2080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1667:23:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2081, + "nodeType": "EmitStatement", + "src": "1662:28:11" + } + ] + }, + "documentation": "@dev unregister a User\nDeletes the data of the user from users\n@param _address the address of the user to be unregistered", + "id": 2083, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2070, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2067, + "src": "1610:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2071, + "modifierName": { + "argumentTypes": null, + "id": 2069, + "name": "onlyOwnerOrUser", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2018, + "src": "1594:15:11", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" + } + }, + "nodeType": "ModifierInvocation", + "src": "1594:25:11" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2068, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2067, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2083, + "src": "1569:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2066, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1569:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1568:18:11" + }, + "payable": false, + "returnParameters": { + "id": 2072, + "nodeType": "ParameterList", + "parameters": [], + "src": "1620:0:11" + }, + "scope": 2110, + "src": "1553:144:11", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2108, + "nodeType": "Block", + "src": "1934:127:11", + "statements": [ + { + "assignments": [ + 2095 + ], + "declarations": [ + { + "constant": false, + "id": 2095, + "name": "userInfo", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1944:25:11", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo" + }, + "typeName": { + "contractScope": null, + "id": 2094, + "name": "UserInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1982, + "src": "1944:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2099, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2096, + "name": "users", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1986, + "src": "1972:5:11", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", + "typeString": "mapping(address => struct Users.UserInfo storage ref)" + } + }, + "id": 2098, + "indexExpression": { + "argumentTypes": null, + "id": 2097, + "name": "_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2085, + "src": "1978:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1972:15:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", + "typeString": "struct Users.UserInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1944:43:11" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2100, + "name": "userInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "2005:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo storage pointer" + } + }, + "id": 2101, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 1977, + "src": "2005:13:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2102, + "name": "userInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "2020:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo storage pointer" + } + }, + "id": 2103, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "email", + "nodeType": "MemberAccess", + "referencedDeclaration": 1979, + "src": "2020:14:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2104, + "name": "userInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "2036:8:11", + "typeDescriptions": { + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", + "typeString": "struct Users.UserInfo storage pointer" + } + }, + "id": 2105, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 1981, + "src": "2036:17:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "id": 2106, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2004:50:11", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_string_storage_$_t_string_storage_$_t_string_storage_$", + "typeString": "tuple(string storage ref,string storage ref,string storage ref)" + } + }, + "functionReturnParameters": 2093, + "id": 2107, + "nodeType": "Return", + "src": "1997:57:11" + } + ] + }, + "documentation": "@dev return information about the user\n@param _address the address of the user\n@return a tuple (name, email, ipfsData)", + "id": 2109, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2085, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1872:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1872:7:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1871:18:11" + }, + "payable": false, + "returnParameters": { + "id": 2093, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2088, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1910:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2087, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1910:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2090, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1918:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2089, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1918:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2092, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "1926:6:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2091, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1926:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1909:24:11" + }, + "scope": 2110, + "src": "1859:202:11", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2111, + "src": "112:1951:11" + } + ], + "src": "0:2064:11" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.060Z" +} \ No newline at end of file diff --git a/build/contracts/Videos.json b/build/contracts/Videos.json index e3c3789..1afa0eb 100644 --- a/build/contracts/Videos.json +++ b/build/contracts/Videos.json @@ -1 +1,7987 @@ -{"contractName":"Videos","abi":[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paratiiRegistry","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":[{"name":"_paratiiRegistry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"},{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"price","type":"uint256"},{"indexed":false,"name":"ipfsHashOrig","type":"string"},{"indexed":false,"name":"ipfsHash","type":"string"},{"indexed":false,"name":"ipfsData","type":"string"},{"indexed":false,"name":"registrar","type":"address"}],"name":"LogCreateVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"videoId","type":"string"}],"name":"LogRemoveVideo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"},{"name":"_owner","type":"address"},{"name":"_price","type":"uint256"},{"name":"_ipfsHashOrig","type":"string"},{"name":"_ipfsHash","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"string"},{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806117bc83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506116b8806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c5c565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f97565b005b34801561047e57600080fd5b506104876113ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061144a565b005b600086600080826040516020018082805190602001908083835b6020831015156105a2578051825260208201915060208101905060208303925061057d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561060b57805182526020820191506020810190506020830392506105e6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107a0575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061074557508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061079f57508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156107ab57600080fd5b896040516020018082805190602001908083835b6020831015156107e457805182526020820191506020810190506020830392506107bf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561084d5780518252602082019150602081019050602083039250610828565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061092792919061159f565b50604082015181600201908051906020019061094492919061159f565b50606082015181600301908051906020019061096192919061159f565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610adb578082015181840152602081019050610ac0565b50505050905090810190601f168015610b085780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610b41578082015181840152602081019050610b26565b50505050905090810190601f168015610b6e5780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610ba7578082015181840152602081019050610b8c565b50505050905090810190601f168015610bd45780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610c0d578082015181840152602081019050610bf2565b50505050905090810190601f168015610c3a5780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040516020018082805190602001908083835b602083101515610ca45780518252602082019150602081019050602083039250610c7f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d0d5780518252602082019150602081019050602083039250610ce8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e425780601f10610e1757610100808354040283529160200191610e42565b820191906000526020600020905b815481529060010190602001808311610e2557829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7a5780601f10610f4f57610100808354040283529160200191610f7a565b820191906000526020600020905b815481529060010190602001808311610f5d57829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040516020018082805190602001908083835b602083101515610fd65780518252602082019150602081019050602083039250610fb1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561103f578051825260208201915060208101905060208303925061101a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111d4575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061117957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806111d357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156111df57600080fd5b846040516020018082805190602001908083835b60208310151561121857805182526020820191506020810190506020830392506111f3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611281578051825260208201915060208101905060208303925061125c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006112e4919061161f565b6002820160006112f4919061161f565b600382016000611304919061161f565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156113be5780820151818401526020810190506113a3565b50505050905090810190601f1680156113eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156114e157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115e057805160ff191683800117855561160e565b8280016001018555821561160e579182015b8281111561160d5782518255916020019190600101906115f2565b5b50905061161b9190611667565b5090565b50805460018160011615610100020316600290046000825580601f106116455750611664565b601f0160209004906000526020600020908101906116639190611667565b5b50565b61168991905b8082111561168557600081600090555060010161166d565b5090565b905600a165627a7a723058206df2512683d6b310205ed8292d21bae906cb6f41ecb9fb3e40e673030d2ffc690029"} \ No newline at end of file +{ + "contractName": "Videos", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "paratiiRegistry", + "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": [ + { + "name": "_paratiiRegistry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "videoId", + "type": "string" + }, + { + "indexed": false, + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "name": "price", + "type": "uint256" + }, + { + "indexed": false, + "name": "ipfsHashOrig", + "type": "string" + }, + { + "indexed": false, + "name": "ipfsHash", + "type": "string" + }, + { + "indexed": false, + "name": "ipfsData", + "type": "string" + }, + { + "indexed": false, + "name": "registrar", + "type": "address" + } + ], + "name": "LogCreateVideo", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "videoId", + "type": "string" + } + ], + "name": "LogRemoveVideo", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + }, + { + "name": "_owner", + "type": "address" + }, + { + "name": "_price", + "type": "uint256" + }, + { + "name": "_ipfsHashOrig", + "type": "string" + }, + { + "name": "_ipfsHash", + "type": "string" + }, + { + "name": "_ipfsData", + "type": "string" + } + ], + "name": "create", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "remove", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_videoId", + "type": "string" + } + ], + "name": "get", + "outputs": [ + { + "name": "", + "type": "address" + }, + { + "name": "", + "type": "uint256" + }, + { + "name": "", + "type": "string" + }, + { + "name": "", + "type": "string" + }, + { + "name": "", + "type": "string" + }, + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516020806117bc83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506116b8806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c5c565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f97565b005b34801561047e57600080fd5b506104876113ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061144a565b005b600086600080826040516020018082805190602001908083835b6020831015156105a2578051825260208201915060208101905060208303925061057d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561060b57805182526020820191506020810190506020830392506105e6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107a0575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061074557508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061079f57508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156107ab57600080fd5b896040516020018082805190602001908083835b6020831015156107e457805182526020820191506020810190506020830392506107bf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561084d5780518252602082019150602081019050602083039250610828565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061092792919061159f565b50604082015181600201908051906020019061094492919061159f565b50606082015181600301908051906020019061096192919061159f565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610adb578082015181840152602081019050610ac0565b50505050905090810190601f168015610b085780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610b41578082015181840152602081019050610b26565b50505050905090810190601f168015610b6e5780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610ba7578082015181840152602081019050610b8c565b50505050905090810190601f168015610bd45780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610c0d578082015181840152602081019050610bf2565b50505050905090810190601f168015610c3a5780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040516020018082805190602001908083835b602083101515610ca45780518252602082019150602081019050602083039250610c7f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d0d5780518252602082019150602081019050602083039250610ce8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e425780601f10610e1757610100808354040283529160200191610e42565b820191906000526020600020905b815481529060010190602001808311610e2557829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7a5780601f10610f4f57610100808354040283529160200191610f7a565b820191906000526020600020905b815481529060010190602001808311610f5d57829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040516020018082805190602001908083835b602083101515610fd65780518252602082019150602081019050602083039250610fb1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561103f578051825260208201915060208101905060208303925061101a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111d4575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061117957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806111d357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156111df57600080fd5b846040516020018082805190602001908083835b60208310151561121857805182526020820191506020810190506020830392506111f3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611281578051825260208201915060208101905060208303925061125c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006112e4919061161f565b6002820160006112f4919061161f565b600382016000611304919061161f565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156113be5780820151818401526020810190506113a3565b50505050905090810190601f1680156113eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156114e157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115e057805160ff191683800117855561160e565b8280016001018555821561160e579182015b8281111561160d5782518255916020019190600101906115f2565b5b50905061161b9190611667565b5090565b50805460018160011615610100020316600290046000825580601f106116455750611664565b601f0160209004906000526020600020908101906116639190611667565b5b50565b61168991905b8082111561168557600081600090555060010161166d565b5090565b905600a165627a7a723058207679811cd57cf129163273cd0576d201d70f93330d2728ed0106172b30b669700029", + "deployedBytecode": "0x608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630b9d64b61461007d578063693ec85e146101e257806380599e4b146104095780638da5cb5b146104725780639e20f789146104c9578063f2fde38b14610520575b600080fd5b34801561008957600080fd5b506101e0600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610563565b005b3480156101ee57600080fd5b50610249600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610c5c565b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018060200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848103845288818151815260200191508051906020019080838360005b838110156102fb5780820151818401526020810190506102e0565b50505050905090810190601f1680156103285780820380516001836020036101000a031916815260200191505b50848103835287818151815260200191508051906020019080838360005b83811015610361578082015181840152602081019050610346565b50505050905090810190601f16801561038e5780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019080838360005b838110156103c75780820151818401526020810190506103ac565b50505050905090810190601f1680156103f45780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b34801561041557600080fd5b50610470600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f97565b005b34801561047e57600080fd5b506104876113ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d557600080fd5b506104de611424565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052c57600080fd5b50610561600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061144a565b005b600086600080826040516020018082805190602001908083835b6020831015156105a2578051825260208201915060208101905060208303925061057d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561060b57805182526020820191506020810190506020830392506105e6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806107a0575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061074557508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b8061079f57508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156107ab57600080fd5b896040516020018082805190602001908083835b6020831015156107e457805182526020820191506020810190506020830392506107bf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561084d5780518252602082019150602081019050602083039250610828565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020935060e060405190810160405280856000191681526020018881526020018781526020018681526020018981526020018a73ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681525060016000866000191660001916815260200190815260200160002060008201518160000190600019169055602082015181600101908051906020019061092792919061159f565b50604082015181600201908051906020019061094492919061159f565b50606082015181600301908051906020019061096192919061159f565b506080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160060160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050507f36c65780b27428d759ce656fa342f6c1ceee6d63f4ab799527453d0209ef6e228a8a8a8a8a8a3360405180806020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018060200180602001806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185810385528c818151815260200191508051906020019080838360005b83811015610adb578082015181840152602081019050610ac0565b50505050905090810190601f168015610b085780820380516001836020036101000a031916815260200191505b50858103845289818151815260200191508051906020019080838360005b83811015610b41578082015181840152602081019050610b26565b50505050905090810190601f168015610b6e5780820380516001836020036101000a031916815260200191505b50858103835288818151815260200191508051906020019080838360005b83811015610ba7578082015181840152602081019050610b8c565b50505050905090810190601f168015610bd45780820380516001836020036101000a031916815260200191505b50858103825287818151815260200191508051906020019080838360005b83811015610c0d578082015181840152602081019050610bf2565b50505050905090810190601f168015610c3a5780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a150505050505050505050565b600080606080606060008060016000896040516020018082805190602001908083835b602083101515610ca45780518252602082019150602081019050602083039250610c7f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610d0d5780518252602082019150602081019050602083039250610ce8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600401548260010183600201846003018560060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e425780601f10610e1757610100808354040283529160200191610e42565b820191906000526020600020905b815481529060010190602001808311610e2557829003601f168201915b50505050509350828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f7a5780601f10610f4f57610100808354040283529160200191610f7a565b820191906000526020600020905b815481529060010190602001808311610f5d57829003601f168201915b505050505091509650965096509650965096505091939550919395565b600081600080826040516020018082805190602001908083835b602083101515610fd65780518252602082019150602081019050602083039250610fb1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561103f578051825260208201915060208101905060208303925061101a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915060016000836000191660001916815260200190815260200160002090506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111d4575060008160060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061117957508060060160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806111d357508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b5b15156111df57600080fd5b846040516020018082805190602001908083835b60208310151561121857805182526020820191506020810190506020830392506111f3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515611281578051825260208201915060208101905060208303925061125c565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902093506001600085600019166000191681526020019081526020016000206000808201600090556001820160006112e4919061161f565b6002820160006112f4919061161f565b600382016000611304919061161f565b60048201600090556005820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556006820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507f592a19ecda39f9bdfc71b1f128f024319cff48402f55ccf171b0878d5b69b7d5856040518080602001828103825283818151815260200191508051906020019080838360005b838110156113be5780820151818401526020810190506113a3565b50505050905090810190601f1680156113eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a15050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156114e157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115e057805160ff191683800117855561160e565b8280016001018555821561160e579182015b8281111561160d5782518255916020019190600101906115f2565b5b50905061161b9190611667565b5090565b50805460018160011615610100020316600290046000825580601f106116455750611664565b601f0160209004906000526020600020908101906116639190611667565b5b50565b61168991905b8082111561168557600081600090555060010161166d565b5090565b905600a165627a7a723058207679811cd57cf129163273cd0576d201d70f93330d2728ed0106172b30b669700029", + "sourceMap": "168:3633:12:-;;;1748:125;8:9:-1;5:2;;;30:1;27;20:12;5:2;1748:125:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;1812:10:12;1804:5;;:18;;;;;;;;;;;;;;;;;;1850:16;1832:15;;:34;;;;;;;;;;;;;;;;;;1748:125;168:3633;;;;;;", + "deployedSourceMap": "168:3633:12:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2321:658;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2321:658:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3346:453;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3346:453:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3346:453:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3346:453:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3346:453:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2985:212;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2985:212:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;716:31:12;;8:9:-1;5:2;;;30:1;27;20:12;5:2;716:31:12;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;2321:658:12;2555:10;2527:8;1486:10;1546:27;1526:8;1509:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1509:26:12;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1509:26:12;;;1499:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1499:37:12;;;;;;;;;;;;;;;;1486:50;;1576:6;:10;1583:2;1576:10;;;;;;;;;;;;;;;;;1546:40;;1618:5;;;;;;;;;;;1604:19;;:10;:19;;;:119;;;;1651:1;1628:9;:19;;;;;;;;;;;;:24;;;:61;;;;1670:9;:19;;;;;;;;;;;;1656:33;;:10;:33;;;1628:61;:94;;;;1707:9;:15;;;;;;;;;;;;1693:29;;:10;:29;;;1628:94;1604:119;1596:128;;;;;;;;2595:8;2578:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2578:26:12;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2578:26:12;;;2568:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2568:37:12;;;;;;;;;;;;;;;;2555:50;;2629:238;;;;;;;;;2658:2;2629:238;;;;;;;2742:13;2629:238;;;;2779:9;2629:238;;;;2812:9;2629:238;;;;2681:6;2629:238;;;;2708:6;2629:238;;;;;;2846:10;2629:238;;;;;2616:6;:10;2623:2;2616:10;;;;;;;;;;;;;;;;;:251;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2883:89;2898:8;2908:6;2916;2924:13;2939:9;2950;2961:10;2883:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2883:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2883:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2883:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2883:89:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2321:658;;;;;;;;;;:::o;3346:453::-;3420:7;3429;3438:6;3446;3454;3462:7;3485:27;3515:6;:45;3549:8;3532:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3532:26:12;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3532:26:12;;;3522:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3522:37:12;;;;;;;;;;;;;;;;3515:45;;;;;;;;;;;;;;;;;3485:75;;3600:9;:15;;;;;;;;;;;;3630:9;:15;;;3660:9;:22;;3697:9;:18;;3730:9;:18;;3763:9;:19;;;;;;;;;;;;3579:213;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3346:453;;;;;;;;:::o;2985:212::-;3074:10;3054:8;1486:10;1546:27;1526:8;1509:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1509:26:12;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1509:26:12;;;1499:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1499:37:12;;;;;;;;;;;;;;;;1486:50;;1576:6;:10;1583:2;1576:10;;;;;;;;;;;;;;;;;1546:40;;1618:5;;;;;;;;;;;1604:19;;:10;:19;;;:119;;;;1651:1;1628:9;:19;;;;;;;;;;;;:24;;;:61;;;;1670:9;:19;;;;;;;;;;;;1656:33;;:10;:33;;;1628:61;:94;;;;1707:9;:15;;;;;;;;;;;;1693:29;;:10;:29;;;1628:94;1604:119;1596:128;;;;;;;;3114:8;3097:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3097:26:12;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3097:26:12;;;3087:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3087:37:12;;;;;;;;;;;;;;;;3074:50;;3141:6;:10;3148:2;3141:10;;;;;;;;;;;;;;;;;;3134:17;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3166:24;3181:8;3166:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3166:24:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2985:212;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;716:31:12:-;;;;;;;;;;;;;:::o;827:169:16:-;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;168:3633:12:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"zeppelin-solidity/contracts/math/SafeMath.sol\";\nimport \"./Registry.sol\";\n\ncontract Videos is Ownable {\n\n struct VideoInfo {\n bytes32 _id;\n string ipfsHashOrig; // the hash of the original file on IPFS\n string ipfsHash; // the hash of the streamable (transcoded) file on IPFS\n string ipfsData; // optional addition data about this video, stored in IPFS\n uint256 price; // price in PTI-wei\n address owner; // the owner\n address registrar; // the account that has registered this video and can update and delete the info\n }\n\n mapping (bytes32=>VideoInfo) videos;\n Registry public paratiiRegistry;\n\n event LogCreateVideo(\n string videoId,\n address owner,\n uint price,\n string ipfsHashOrig,\n string ipfsHash,\n string ipfsData,\n address registrar\n );\n\n event LogRemoveVideo(string videoId);\n\n // ???\n modifier onlyUserRegistry() {\n require(msg.sender == paratiiRegistry.getContract(\"Users\"));\n _;\n }\n\n modifier onlyRegistrarOrAvatar(string _videoId) {\n bytes32 id = keccak256(abi.encodePacked(_videoId));\n VideoInfo storage videoInfo = videos[id];\n require(msg.sender == owner || (videoInfo.registrar == 0 || msg.sender == videoInfo.registrar));\n _;\n }\n modifier onlyRegistrarOrAvatarOrOwner(string _videoId) {\n bytes32 id = keccak256(abi.encodePacked(_videoId));\n VideoInfo storage videoInfo = videos[id];\n require(msg.sender == owner || (videoInfo.registrar == 0 || msg.sender == videoInfo.registrar || msg.sender == videoInfo.owner));\n _;\n }\n\n constructor(Registry _paratiiRegistry) public {\n owner = msg.sender;\n paratiiRegistry = _paratiiRegistry;\n }\n\n /**\n * @dev Register a video\n * @param _videoId id of the video, can be any string\n * @param _owner the address of the owner of this video\n * @param _price the price in wei of this video\n * @param _ipfsHashOrig the hash of the original file on IPFS\n * @param _ipfsHash the hash of the streamable (transcoded) file on IPFS\n * @param _ipfsData optional additional data about this video, stored in IPFS\n **/\n\n function create(\n string _videoId,\n address _owner,\n uint256 _price,\n string _ipfsHashOrig,\n string _ipfsHash,\n string _ipfsData\n ) onlyRegistrarOrAvatarOrOwner(_videoId) public {\n\n bytes32 id = keccak256(abi.encodePacked(_videoId));\n\n videos[id] = VideoInfo({\n _id: id,\n price: _price,\n owner: _owner,\n ipfsHashOrig: _ipfsHashOrig,\n ipfsHash: _ipfsHash,\n ipfsData: _ipfsData,\n registrar: msg.sender\n });\n\n emit LogCreateVideo(_videoId, _owner, _price, _ipfsHashOrig, _ipfsHash, _ipfsData, msg.sender);\n }\n\n function remove(string _videoId) public onlyRegistrarOrAvatarOrOwner(_videoId) {\n bytes32 id = keccak256(abi.encodePacked(_videoId));\n delete videos[id];\n emit LogRemoveVideo(_videoId);\n }\n\n /**\n * @dev return information about video\n * @return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)\n */\n\n function get(string _videoId)\n public\n view\n returns(address, uint256, string, string, string, address)\n {\n VideoInfo storage videoInfo = videos[keccak256(abi.encodePacked(_videoId))];\n \n return (\n videoInfo.owner, \n videoInfo.price, \n videoInfo.ipfsHashOrig, \n videoInfo.ipfsHash, \n videoInfo.ipfsData, \n videoInfo.registrar\n );\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", + "exportedSymbols": { + "Videos": [ + 2398 + ] + }, + "id": 2399, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2112, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:12" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2113, + "nodeType": "ImportDirective", + "scope": 2399, + "sourceUnit": 2950, + "src": "26:59:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 2114, + "nodeType": "ImportDirective", + "scope": 2399, + "sourceUnit": 2894, + "src": "86:55:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 2115, + "nodeType": "ImportDirective", + "scope": 2399, + "sourceUnit": 1157, + "src": "142:24:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2116, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "187:7:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 2117, + "nodeType": "InheritanceSpecifier", + "src": "187:7:12" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2398, + "linearizedBaseContracts": [ + 2398, + 2949 + ], + "name": "Videos", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "Videos.VideoInfo", + "id": 2132, + "members": [ + { + "constant": false, + "id": 2119, + "name": "_id", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "229:11:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2118, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "229:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2121, + "name": "ipfsHashOrig", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "250:19:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2120, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "250:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2123, + "name": "ipfsHash", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "320:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2122, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "320:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2125, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "401:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2124, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "401:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2127, + "name": "price", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "485:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2126, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "485:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2129, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "528:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2128, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "528:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2131, + "name": "registrar", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "564:17:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "564:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "VideoInfo", + "nodeType": "StructDefinition", + "scope": 2398, + "src": "202:467:12", + "visibility": "public" + }, + { + "constant": false, + "id": 2136, + "name": "videos", + "nodeType": "VariableDeclaration", + "scope": 2398, + "src": "675:35:12", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" + }, + "typeName": { + "id": 2135, + "keyType": { + "id": 2133, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "684:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "675:28:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" + }, + "valueType": { + "contractScope": null, + "id": 2134, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "693:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2138, + "name": "paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 2398, + "src": "716:31:12", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2137, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "716:8:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 2154, + "name": "LogCreateVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 2153, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2140, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "784:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2139, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "784:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2142, + "indexed": false, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "808:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2141, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "808:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2144, + "indexed": false, + "name": "price", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "831:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2143, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "831:4:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2146, + "indexed": false, + "name": "ipfsHashOrig", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "851:19:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2145, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "851:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2148, + "indexed": false, + "name": "ipfsHash", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "880:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2147, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "880:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2150, + "indexed": false, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "905:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2149, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "905:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2152, + "indexed": false, + "name": "registrar", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "930:17:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2151, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "930:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "774:179:12" + }, + "src": "754:200:12" + }, + { + "anonymous": false, + "documentation": null, + "id": 2158, + "name": "LogRemoveVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 2157, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2156, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 2158, + "src": "981:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2155, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "981:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "980:16:12" + }, + "src": "960:37:12" + }, + { + "body": { + "id": 2171, + "nodeType": "Block", + "src": "1042:87:12", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2161, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1060:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1060:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "5573657273", + "id": 2165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1102:7:12", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", + "typeString": "literal_string \"Users\"" + }, + "value": "Users" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", + "typeString": "literal_string \"Users\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2163, + "name": "paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2138, + "src": "1074:15:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2164, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1074:27:12", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1074:36:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1060:50:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2160, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1052:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1052:59:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2169, + "nodeType": "ExpressionStatement", + "src": "1052:59:12" + }, + { + "id": 2170, + "nodeType": "PlaceholderStatement", + "src": "1121:1:12" + } + ] + }, + "documentation": null, + "id": 2172, + "name": "onlyUserRegistry", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2159, + "nodeType": "ParameterList", + "parameters": [], + "src": "1039:2:12" + }, + "src": "1014:115:12", + "visibility": "internal" + }, + { + "body": { + "id": 2211, + "nodeType": "Block", + "src": "1183:233:12", + "statements": [ + { + "assignments": [ + 2177 + ], + "declarations": [ + { + "constant": false, + "id": 2177, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2212, + "src": "1193:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2176, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1193:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2184, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2181, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2174, + "src": "1233:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2179, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1216:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1216:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1216:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2178, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1206:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1206:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1193:50:12" + }, + { + "assignments": [ + 2186 + ], + "declarations": [ + { + "constant": false, + "id": 2186, + "name": "videoInfo", + "nodeType": "VariableDeclaration", + "scope": 2212, + "src": "1253:27:12", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + }, + "typeName": { + "contractScope": null, + "id": 2185, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "1253:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2190, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2187, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "1283:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2189, + "indexExpression": { + "argumentTypes": null, + "id": 2188, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2177, + "src": "1290:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1283:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1253:40:12" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2192, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1311:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1311:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2194, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1325:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1311:19:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2196, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2186, + "src": "1335:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2197, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1335:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1358:1:12", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1335:24:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2200, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1363:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1363:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2202, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2186, + "src": "1377:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2203, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1377:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1363:33:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1335:61:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2206, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1334:63:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1311:86:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2191, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1303:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1303:95:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2209, + "nodeType": "ExpressionStatement", + "src": "1303:95:12" + }, + { + "id": 2210, + "nodeType": "PlaceholderStatement", + "src": "1408:1:12" + } + ] + }, + "documentation": null, + "id": 2212, + "name": "onlyRegistrarOrAvatar", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2175, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2174, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2212, + "src": "1166:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2173, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1166:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1165:17:12" + }, + "src": "1135:281:12", + "visibility": "internal" + }, + { + "body": { + "id": 2257, + "nodeType": "Block", + "src": "1476:266:12", + "statements": [ + { + "assignments": [ + 2217 + ], + "declarations": [ + { + "constant": false, + "id": 2217, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2258, + "src": "1486:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2216, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1486:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2224, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2221, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2214, + "src": "1526:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2219, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1509:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1509:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2222, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1509:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2218, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1499:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1499:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1486:50:12" + }, + { + "assignments": [ + 2226 + ], + "declarations": [ + { + "constant": false, + "id": 2226, + "name": "videoInfo", + "nodeType": "VariableDeclaration", + "scope": 2258, + "src": "1546:27:12", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + }, + "typeName": { + "contractScope": null, + "id": 2225, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "1546:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2230, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2227, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "1576:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2229, + "indexExpression": { + "argumentTypes": null, + "id": 2228, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2217, + "src": "1583:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1576:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1546:40:12" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2232, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1604:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1604:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2234, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1618:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1604:19:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2236, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2226, + "src": "1628:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2237, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1628:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1651:1:12", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1628:24:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2240, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1656:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1656:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2242, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2226, + "src": "1670:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2243, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1670:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1656:33:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1628:61:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2246, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1693:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1693:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2248, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2226, + "src": "1707:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2249, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 2129, + "src": "1707:15:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1693:29:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1628:94:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2252, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1627:96:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1604:119:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2231, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1596:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1596:128:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2255, + "nodeType": "ExpressionStatement", + "src": "1596:128:12" + }, + { + "id": 2256, + "nodeType": "PlaceholderStatement", + "src": "1734:1:12" + } + ] + }, + "documentation": null, + "id": 2258, + "name": "onlyRegistrarOrAvatarOrOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2215, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2214, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2258, + "src": "1459:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2213, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1459:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1458:17:12" + }, + "src": "1421:321:12", + "visibility": "internal" + }, + { + "body": { + "id": 2272, + "nodeType": "Block", + "src": "1794:79:12", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2263, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1804:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2264, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1812:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1812:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1804:18:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2267, + "nodeType": "ExpressionStatement", + "src": "1804:18:12" + }, + { + "expression": { + "argumentTypes": null, + "id": 2270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2268, + "name": "paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2138, + "src": "1832:15:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2269, + "name": "_paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2260, + "src": "1850:16:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "1832:34:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2271, + "nodeType": "ExpressionStatement", + "src": "1832:34:12" + } + ] + }, + "documentation": null, + "id": 2273, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2261, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2260, + "name": "_paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 2273, + "src": "1760:25:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2259, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "1760:8:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1759:27:12" + }, + "payable": false, + "returnParameters": { + "id": 2262, + "nodeType": "ParameterList", + "parameters": [], + "src": "1794:0:12" + }, + "scope": 2398, + "src": "1748:125:12", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2326, + "nodeType": "Block", + "src": "2544:435:12", + "statements": [ + { + "assignments": [ + 2292 + ], + "declarations": [ + { + "constant": false, + "id": 2292, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2555:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2291, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2555:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2299, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2296, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2275, + "src": "2595:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2294, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2578:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2578:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2578:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2293, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2568:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2568:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2555:50:12" + }, + { + "expression": { + "argumentTypes": null, + "id": 2313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2300, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "2616:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2302, + "indexExpression": { + "argumentTypes": null, + "id": 2301, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "2623:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2616:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2304, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "2658:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 2305, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2279, + "src": "2681:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 2306, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2277, + "src": "2708:6:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2307, + "name": "_ipfsHashOrig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2281, + "src": "2742:13:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2308, + "name": "_ipfsHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "2779:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2309, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2285, + "src": "2812:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2310, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2846:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2846:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": null, + "id": 2303, + "name": "VideoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2132, + "src": "2629:9:12", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2132_storage_ptr_$", + "typeString": "type(struct Videos.VideoInfo storage pointer)" + } + }, + "id": 2312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [ + "_id", + "price", + "owner", + "ipfsHashOrig", + "ipfsHash", + "ipfsData", + "registrar" + ], + "nodeType": "FunctionCall", + "src": "2629:238:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_memory", + "typeString": "struct Videos.VideoInfo memory" + } + }, + "src": "2616:251:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "id": 2314, + "nodeType": "ExpressionStatement", + "src": "2616:251:12" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2316, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2275, + "src": "2898:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2317, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2277, + "src": "2908:6:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2318, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2279, + "src": "2916:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 2319, + "name": "_ipfsHashOrig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2281, + "src": "2924:13:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2320, + "name": "_ipfsHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "2939:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2321, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2285, + "src": "2950:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2322, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2961:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2961:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2315, + "name": "LogCreateVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2154, + "src": "2883:14:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (string memory,address,uint256,string memory,string memory,string memory,address)" + } + }, + "id": 2324, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2883:89:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2325, + "nodeType": "EmitStatement", + "src": "2878:94:12" + } + ] + }, + "documentation": "@dev Register a video\n@param _videoId id of the video, can be any string\n@param _owner the address of the owner of this video\n@param _price the price in wei of this video\n@param _ipfsHashOrig the hash of the original file on IPFS\n@param _ipfsHash the hash of the streamable (transcoded) file on IPFS\n@param _ipfsData optional additional data about this video, stored in IPFS*", + "id": 2327, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2288, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2275, + "src": "2527:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "id": 2289, + "modifierName": { + "argumentTypes": null, + "id": 2287, + "name": "onlyRegistrarOrAvatarOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2258, + "src": "2498:28:12", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", + "typeString": "modifier (string memory)" + } + }, + "nodeType": "ModifierInvocation", + "src": "2498:38:12" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2275, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2346:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2274, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2346:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2277, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2371:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2276, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2371:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2279, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2395:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2278, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2395:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2281, + "name": "_ipfsHashOrig", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2419:20:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2280, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2419:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2283, + "name": "_ipfsHash", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2449:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2449:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2285, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2475:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2284, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2475:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2336:161:12" + }, + "payable": false, + "returnParameters": { + "id": 2290, + "nodeType": "ParameterList", + "parameters": [], + "src": "2544:0:12" + }, + "scope": 2398, + "src": "2321:658:12", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2353, + "nodeType": "Block", + "src": "3064:133:12", + "statements": [ + { + "assignments": [ + 2336 + ], + "declarations": [ + { + "constant": false, + "id": 2336, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2354, + "src": "3074:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2335, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3074:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2343, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2340, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3114:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2338, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3097:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3097:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3097:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2337, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3087:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3087:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3074:50:12" + }, + { + "expression": { + "argumentTypes": null, + "id": 2347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "3134:17:12", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2344, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "3141:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2346, + "indexExpression": { + "argumentTypes": null, + "id": 2345, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2336, + "src": "3148:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3141:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2348, + "nodeType": "ExpressionStatement", + "src": "3134:17:12" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2350, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3181:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2349, + "name": "LogRemoveVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2158, + "src": "3166:14:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3166:24:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2352, + "nodeType": "EmitStatement", + "src": "3161:29:12" + } + ] + }, + "documentation": null, + "id": 2354, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2332, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3054:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "id": 2333, + "modifierName": { + "argumentTypes": null, + "id": 2331, + "name": "onlyRegistrarOrAvatarOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2258, + "src": "3025:28:12", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", + "typeString": "modifier (string memory)" + } + }, + "nodeType": "ModifierInvocation", + "src": "3025:38:12" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2329, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2354, + "src": "3001:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2328, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3001:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3000:17:12" + }, + "payable": false, + "returnParameters": { + "id": 2334, + "nodeType": "ParameterList", + "parameters": [], + "src": "3064:0:12" + }, + "scope": 2398, + "src": "2985:212:12", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2396, + "nodeType": "Block", + "src": "3475:324:12", + "statements": [ + { + "assignments": [ + 2372 + ], + "declarations": [ + { + "constant": false, + "id": 2372, + "name": "videoInfo", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3485:27:12", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + }, + "typeName": { + "contractScope": null, + "id": 2371, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "3485:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2381, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2373, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "3515:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2380, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2377, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2356, + "src": "3549:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2375, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3532:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3532:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3532:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2374, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3522:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3522:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3515:45:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3485:75:12" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2382, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3600:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2383, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 2129, + "src": "3600:15:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2384, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3630:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2385, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "price", + "nodeType": "MemberAccess", + "referencedDeclaration": 2127, + "src": "3630:15:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2386, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3660:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2387, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsHashOrig", + "nodeType": "MemberAccess", + "referencedDeclaration": 2121, + "src": "3660:22:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2388, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3697:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2389, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsHash", + "nodeType": "MemberAccess", + "referencedDeclaration": 2123, + "src": "3697:18:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2390, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3730:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2391, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 2125, + "src": "3730:18:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2392, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3763:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2393, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "3763:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2394, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3586:206:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_storage_$_t_string_storage_$_t_string_storage_$_t_address_$", + "typeString": "tuple(address,uint256,string storage ref,string storage ref,string storage ref,address)" + } + }, + "functionReturnParameters": 2370, + "id": 2395, + "nodeType": "Return", + "src": "3579:213:12" + } + ] + }, + "documentation": "@dev return information about video\n@return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)", + "id": 2397, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2357, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2356, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3359:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2355, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3359:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3358:17:12" + }, + "payable": false, + "returnParameters": { + "id": 2370, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2359, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3420:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2358, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3420:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2361, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3429:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2360, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3429:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2363, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3438:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2362, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3438:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2365, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3446:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2364, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3446:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2367, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3454:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2366, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3454:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2369, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3462:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2368, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3462:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3419:51:12" + }, + "scope": 2398, + "src": "3346:453:12", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2399, + "src": "168:3633:12" + } + ], + "src": "0:3802:12" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", + "exportedSymbols": { + "Videos": [ + 2398 + ] + }, + "id": 2399, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2112, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:12" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2113, + "nodeType": "ImportDirective", + "scope": 2399, + "sourceUnit": 2950, + "src": "26:59:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", + "file": "zeppelin-solidity/contracts/math/SafeMath.sol", + "id": 2114, + "nodeType": "ImportDirective", + "scope": 2399, + "sourceUnit": 2894, + "src": "86:55:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 2115, + "nodeType": "ImportDirective", + "scope": 2399, + "sourceUnit": 1157, + "src": "142:24:12", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2116, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "187:7:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 2117, + "nodeType": "InheritanceSpecifier", + "src": "187:7:12" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2398, + "linearizedBaseContracts": [ + 2398, + 2949 + ], + "name": "Videos", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "Videos.VideoInfo", + "id": 2132, + "members": [ + { + "constant": false, + "id": 2119, + "name": "_id", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "229:11:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2118, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "229:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2121, + "name": "ipfsHashOrig", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "250:19:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2120, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "250:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2123, + "name": "ipfsHash", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "320:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2122, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "320:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2125, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "401:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2124, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "401:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2127, + "name": "price", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "485:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2126, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "485:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2129, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "528:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2128, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "528:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2131, + "name": "registrar", + "nodeType": "VariableDeclaration", + "scope": 2132, + "src": "564:17:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "564:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "VideoInfo", + "nodeType": "StructDefinition", + "scope": 2398, + "src": "202:467:12", + "visibility": "public" + }, + { + "constant": false, + "id": 2136, + "name": "videos", + "nodeType": "VariableDeclaration", + "scope": 2398, + "src": "675:35:12", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" + }, + "typeName": { + "id": 2135, + "keyType": { + "id": 2133, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "684:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "675:28:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" + }, + "valueType": { + "contractScope": null, + "id": 2134, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "693:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2138, + "name": "paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 2398, + "src": "716:31:12", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2137, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "716:8:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 2154, + "name": "LogCreateVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 2153, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2140, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "784:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2139, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "784:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2142, + "indexed": false, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "808:13:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2141, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "808:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2144, + "indexed": false, + "name": "price", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "831:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2143, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "831:4:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2146, + "indexed": false, + "name": "ipfsHashOrig", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "851:19:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2145, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "851:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2148, + "indexed": false, + "name": "ipfsHash", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "880:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2147, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "880:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2150, + "indexed": false, + "name": "ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "905:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2149, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "905:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2152, + "indexed": false, + "name": "registrar", + "nodeType": "VariableDeclaration", + "scope": 2154, + "src": "930:17:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2151, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "930:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "774:179:12" + }, + "src": "754:200:12" + }, + { + "anonymous": false, + "documentation": null, + "id": 2158, + "name": "LogRemoveVideo", + "nodeType": "EventDefinition", + "parameters": { + "id": 2157, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2156, + "indexed": false, + "name": "videoId", + "nodeType": "VariableDeclaration", + "scope": 2158, + "src": "981:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2155, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "981:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "980:16:12" + }, + "src": "960:37:12" + }, + { + "body": { + "id": 2171, + "nodeType": "Block", + "src": "1042:87:12", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2161, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1060:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1060:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "5573657273", + "id": 2165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1102:7:12", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", + "typeString": "literal_string \"Users\"" + }, + "value": "Users" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2dea1ebefab48650b6eee6e1807b6a41fa486c586e7b781e65b0d2434ef7ebc6", + "typeString": "literal_string \"Users\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2163, + "name": "paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2138, + "src": "1074:15:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2164, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1074:27:12", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1074:36:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1060:50:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2160, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1052:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1052:59:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2169, + "nodeType": "ExpressionStatement", + "src": "1052:59:12" + }, + { + "id": 2170, + "nodeType": "PlaceholderStatement", + "src": "1121:1:12" + } + ] + }, + "documentation": null, + "id": 2172, + "name": "onlyUserRegistry", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2159, + "nodeType": "ParameterList", + "parameters": [], + "src": "1039:2:12" + }, + "src": "1014:115:12", + "visibility": "internal" + }, + { + "body": { + "id": 2211, + "nodeType": "Block", + "src": "1183:233:12", + "statements": [ + { + "assignments": [ + 2177 + ], + "declarations": [ + { + "constant": false, + "id": 2177, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2212, + "src": "1193:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2176, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1193:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2184, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2181, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2174, + "src": "1233:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2179, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1216:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1216:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1216:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2178, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1206:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1206:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1193:50:12" + }, + { + "assignments": [ + 2186 + ], + "declarations": [ + { + "constant": false, + "id": 2186, + "name": "videoInfo", + "nodeType": "VariableDeclaration", + "scope": 2212, + "src": "1253:27:12", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + }, + "typeName": { + "contractScope": null, + "id": 2185, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "1253:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2190, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2187, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "1283:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2189, + "indexExpression": { + "argumentTypes": null, + "id": 2188, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2177, + "src": "1290:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1283:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1253:40:12" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2192, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1311:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1311:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2194, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1325:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1311:19:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2196, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2186, + "src": "1335:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2197, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1335:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1358:1:12", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1335:24:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2200, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1363:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1363:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2202, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2186, + "src": "1377:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2203, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1377:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1363:33:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1335:61:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2206, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1334:63:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1311:86:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2191, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1303:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1303:95:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2209, + "nodeType": "ExpressionStatement", + "src": "1303:95:12" + }, + { + "id": 2210, + "nodeType": "PlaceholderStatement", + "src": "1408:1:12" + } + ] + }, + "documentation": null, + "id": 2212, + "name": "onlyRegistrarOrAvatar", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2175, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2174, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2212, + "src": "1166:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2173, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1166:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1165:17:12" + }, + "src": "1135:281:12", + "visibility": "internal" + }, + { + "body": { + "id": 2257, + "nodeType": "Block", + "src": "1476:266:12", + "statements": [ + { + "assignments": [ + 2217 + ], + "declarations": [ + { + "constant": false, + "id": 2217, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2258, + "src": "1486:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2216, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1486:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2224, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2221, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2214, + "src": "1526:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2219, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1509:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1509:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2222, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1509:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2218, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1499:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1499:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1486:50:12" + }, + { + "assignments": [ + 2226 + ], + "declarations": [ + { + "constant": false, + "id": 2226, + "name": "videoInfo", + "nodeType": "VariableDeclaration", + "scope": 2258, + "src": "1546:27:12", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + }, + "typeName": { + "contractScope": null, + "id": 2225, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "1546:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2230, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2227, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "1576:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2229, + "indexExpression": { + "argumentTypes": null, + "id": 2228, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2217, + "src": "1583:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1576:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1546:40:12" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2232, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1604:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1604:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2234, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1618:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1604:19:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2236, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2226, + "src": "1628:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2237, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1628:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1651:1:12", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1628:24:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2240, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1656:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1656:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2242, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2226, + "src": "1670:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2243, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "1670:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1656:33:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1628:61:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2246, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1693:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1693:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2248, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2226, + "src": "1707:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2249, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 2129, + "src": "1707:15:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1693:29:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1628:94:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2252, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1627:96:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1604:119:12", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2231, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1596:7:12", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1596:128:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2255, + "nodeType": "ExpressionStatement", + "src": "1596:128:12" + }, + { + "id": 2256, + "nodeType": "PlaceholderStatement", + "src": "1734:1:12" + } + ] + }, + "documentation": null, + "id": 2258, + "name": "onlyRegistrarOrAvatarOrOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2215, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2214, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2258, + "src": "1459:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2213, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1459:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1458:17:12" + }, + "src": "1421:321:12", + "visibility": "internal" + }, + { + "body": { + "id": 2272, + "nodeType": "Block", + "src": "1794:79:12", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2263, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "1804:5:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2264, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "1812:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1812:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1804:18:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2267, + "nodeType": "ExpressionStatement", + "src": "1804:18:12" + }, + { + "expression": { + "argumentTypes": null, + "id": 2270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2268, + "name": "paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2138, + "src": "1832:15:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2269, + "name": "_paratiiRegistry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2260, + "src": "1850:16:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "1832:34:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2271, + "nodeType": "ExpressionStatement", + "src": "1832:34:12" + } + ] + }, + "documentation": null, + "id": 2273, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2261, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2260, + "name": "_paratiiRegistry", + "nodeType": "VariableDeclaration", + "scope": 2273, + "src": "1760:25:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2259, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "1760:8:12", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1759:27:12" + }, + "payable": false, + "returnParameters": { + "id": 2262, + "nodeType": "ParameterList", + "parameters": [], + "src": "1794:0:12" + }, + "scope": 2398, + "src": "1748:125:12", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2326, + "nodeType": "Block", + "src": "2544:435:12", + "statements": [ + { + "assignments": [ + 2292 + ], + "declarations": [ + { + "constant": false, + "id": 2292, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2555:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2291, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2555:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2299, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2296, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2275, + "src": "2595:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2294, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "2578:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2578:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2578:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2293, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "2568:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2568:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2555:50:12" + }, + { + "expression": { + "argumentTypes": null, + "id": 2313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2300, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "2616:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2302, + "indexExpression": { + "argumentTypes": null, + "id": 2301, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "2623:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2616:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2304, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "2658:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 2305, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2279, + "src": "2681:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 2306, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2277, + "src": "2708:6:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2307, + "name": "_ipfsHashOrig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2281, + "src": "2742:13:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2308, + "name": "_ipfsHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "2779:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2309, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2285, + "src": "2812:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2310, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2846:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2846:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": null, + "id": 2303, + "name": "VideoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2132, + "src": "2629:9:12", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2132_storage_ptr_$", + "typeString": "type(struct Videos.VideoInfo storage pointer)" + } + }, + "id": 2312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [ + "_id", + "price", + "owner", + "ipfsHashOrig", + "ipfsHash", + "ipfsData", + "registrar" + ], + "nodeType": "FunctionCall", + "src": "2629:238:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_memory", + "typeString": "struct Videos.VideoInfo memory" + } + }, + "src": "2616:251:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "id": 2314, + "nodeType": "ExpressionStatement", + "src": "2616:251:12" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2316, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2275, + "src": "2898:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2317, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2277, + "src": "2908:6:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2318, + "name": "_price", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2279, + "src": "2916:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 2319, + "name": "_ipfsHashOrig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2281, + "src": "2924:13:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2320, + "name": "_ipfsHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "2939:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2321, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2285, + "src": "2950:9:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2322, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2961:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2961:10:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2315, + "name": "LogCreateVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2154, + "src": "2883:14:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$_t_uint256_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (string memory,address,uint256,string memory,string memory,string memory,address)" + } + }, + "id": 2324, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2883:89:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2325, + "nodeType": "EmitStatement", + "src": "2878:94:12" + } + ] + }, + "documentation": "@dev Register a video\n@param _videoId id of the video, can be any string\n@param _owner the address of the owner of this video\n@param _price the price in wei of this video\n@param _ipfsHashOrig the hash of the original file on IPFS\n@param _ipfsHash the hash of the streamable (transcoded) file on IPFS\n@param _ipfsData optional additional data about this video, stored in IPFS*", + "id": 2327, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2288, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2275, + "src": "2527:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "id": 2289, + "modifierName": { + "argumentTypes": null, + "id": 2287, + "name": "onlyRegistrarOrAvatarOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2258, + "src": "2498:28:12", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", + "typeString": "modifier (string memory)" + } + }, + "nodeType": "ModifierInvocation", + "src": "2498:38:12" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2275, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2346:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2274, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2346:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2277, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2371:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2276, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2371:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2279, + "name": "_price", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2395:14:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2278, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2395:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2281, + "name": "_ipfsHashOrig", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2419:20:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2280, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2419:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2283, + "name": "_ipfsHash", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2449:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2449:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2285, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "2475:16:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2284, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2475:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2336:161:12" + }, + "payable": false, + "returnParameters": { + "id": 2290, + "nodeType": "ParameterList", + "parameters": [], + "src": "2544:0:12" + }, + "scope": 2398, + "src": "2321:658:12", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2353, + "nodeType": "Block", + "src": "3064:133:12", + "statements": [ + { + "assignments": [ + 2336 + ], + "declarations": [ + { + "constant": false, + "id": 2336, + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 2354, + "src": "3074:10:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2335, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3074:7:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2343, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2340, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3114:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2338, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3097:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3097:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3097:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2337, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3087:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3087:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3074:50:12" + }, + { + "expression": { + "argumentTypes": null, + "id": 2347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "3134:17:12", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2344, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "3141:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2346, + "indexExpression": { + "argumentTypes": null, + "id": 2345, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2336, + "src": "3148:2:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3141:10:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2348, + "nodeType": "ExpressionStatement", + "src": "3134:17:12" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2350, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3181:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2349, + "name": "LogRemoveVideo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2158, + "src": "3166:14:12", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3166:24:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2352, + "nodeType": "EmitStatement", + "src": "3161:29:12" + } + ] + }, + "documentation": null, + "id": 2354, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": [ + { + "argumentTypes": null, + "id": 2332, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3054:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "id": 2333, + "modifierName": { + "argumentTypes": null, + "id": 2331, + "name": "onlyRegistrarOrAvatarOrOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2258, + "src": "3025:28:12", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", + "typeString": "modifier (string memory)" + } + }, + "nodeType": "ModifierInvocation", + "src": "3025:38:12" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2329, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2354, + "src": "3001:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2328, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3001:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3000:17:12" + }, + "payable": false, + "returnParameters": { + "id": 2334, + "nodeType": "ParameterList", + "parameters": [], + "src": "3064:0:12" + }, + "scope": 2398, + "src": "2985:212:12", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2396, + "nodeType": "Block", + "src": "3475:324:12", + "statements": [ + { + "assignments": [ + 2372 + ], + "declarations": [ + { + "constant": false, + "id": 2372, + "name": "videoInfo", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3485:27:12", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + }, + "typeName": { + "contractScope": null, + "id": 2371, + "name": "VideoInfo", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2132, + "src": "3485:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2381, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2373, + "name": "videos", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2136, + "src": "3515:6:12", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", + "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" + } + }, + "id": 2380, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2377, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2356, + "src": "3549:8:12", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2375, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "3532:3:12", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3532:16:12", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3532:26:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2374, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "3522:9:12", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3522:37:12", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3515:45:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", + "typeString": "struct Videos.VideoInfo storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3485:75:12" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2382, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3600:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2383, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 2129, + "src": "3600:15:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2384, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3630:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2385, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "price", + "nodeType": "MemberAccess", + "referencedDeclaration": 2127, + "src": "3630:15:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2386, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3660:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2387, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsHashOrig", + "nodeType": "MemberAccess", + "referencedDeclaration": 2121, + "src": "3660:22:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2388, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3697:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2389, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsHash", + "nodeType": "MemberAccess", + "referencedDeclaration": 2123, + "src": "3697:18:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2390, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3730:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2391, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 2125, + "src": "3730:18:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2392, + "name": "videoInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2372, + "src": "3763:9:12", + "typeDescriptions": { + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", + "typeString": "struct Videos.VideoInfo storage pointer" + } + }, + "id": 2393, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "registrar", + "nodeType": "MemberAccess", + "referencedDeclaration": 2131, + "src": "3763:19:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2394, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3586:206:12", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_uint256_$_t_string_storage_$_t_string_storage_$_t_string_storage_$_t_address_$", + "typeString": "tuple(address,uint256,string storage ref,string storage ref,string storage ref,address)" + } + }, + "functionReturnParameters": 2370, + "id": 2395, + "nodeType": "Return", + "src": "3579:213:12" + } + ] + }, + "documentation": "@dev return information about video\n@return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)", + "id": 2397, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2357, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2356, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3359:15:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2355, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3359:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3358:17:12" + }, + "payable": false, + "returnParameters": { + "id": 2370, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2359, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3420:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2358, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3420:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2361, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3429:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2360, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3429:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2363, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3438:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2362, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3438:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2365, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3446:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2364, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3446:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2367, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3454:6:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2366, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3454:6:12", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2369, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "3462:7:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2368, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3462:7:12", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3419:51:12" + }, + "scope": 2398, + "src": "3346:453:12", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2399, + "src": "168:3633:12" + } + ], + "src": "0:3802:12" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.062Z" +} \ No newline at end of file diff --git a/build/contracts/Views.json b/build/contracts/Views.json index a351168..e1b4a39 100644 --- a/build/contracts/Views.json +++ b/build/contracts/Views.json @@ -1 +1,5079 @@ -{"contractName":"Views","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"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":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"},{"indexed":false,"name":"_ipfsData","type":"string"}],"name":"LogCreateView","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_videoId","type":"string"}],"name":"LogRemoveView","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"},{"name":"_ipfsData","type":"string"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"get","outputs":[{"name":"","type":"bool"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_viewer","type":"address"},{"name":"_videoId","type":"string"}],"name":"userViewedVideo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b506040516020806114f183398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506113ed806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082d565b005b3480156101ec57600080fd5b506101f5610c7a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610ca0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cc5565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e06565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f5b565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b6020831015156106865780518252602082019150602081019050602083039250610661565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106ef57805182526020820191506020810190506020830392506106ca565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600061075791906112d4565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109af5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d602081101561096f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ba57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040516020018082805190602001908083835b602083101515610a4c5780518252602082019150602081019050602083039250610a27565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ab55780518252602082019150602081019050602083039250610a90565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610b3492919061131c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610bd2578082015181840152602081019050610bb7565b50505050905090810190601f168015610bff5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610d415780518252602082019150602081019050602083039250610d1c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610daa5780518252602082019150602081019050602083039250610d85565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9d57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561107957600080fd5b505af115801561108d573d6000803e3d6000fd5b505050506040513d60208110156110a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156110ee57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156111685780518252602082019150602081019050602083039250611143565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112c15780601f10611296576101008083540402835291602001916112c1565b820191906000526020600020905b8154815290600101906020018083116112a457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f106112fa5750611319565b601f016020900490600052602060002090810190611318919061139c565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061135d57805160ff191683800117855561138b565b8280016001018555821561138b579182015b8281111561138a57825182559160200191906001019061136f565b5b509050611398919061139c565b5090565b6113be91905b808211156113ba5760008160009055506001016113a2565b5090565b905600a165627a7a7230582099340bc8b623b6840249e09b81792f58ad9be7a0fffba2f171b1a704756ffc670029"} \ No newline at end of file +{ + "contractName": "Views", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "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": [ + { + "name": "_registry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_address", + "type": "address" + }, + { + "indexed": false, + "name": "_videoId", + "type": "string" + }, + { + "indexed": false, + "name": "_ipfsData", + "type": "string" + } + ], + "name": "LogCreateView", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_address", + "type": "address" + }, + { + "indexed": false, + "name": "_videoId", + "type": "string" + } + ], + "name": "LogRemoveView", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_viewer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + }, + { + "name": "_ipfsData", + "type": "string" + } + ], + "name": "create", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_viewer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "remove", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_viewer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "get", + "outputs": [ + { + "name": "", + "type": "bool" + }, + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_viewer", + "type": "address" + }, + { + "name": "_videoId", + "type": "string" + } + ], + "name": "userViewedVideo", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516020806114f183398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506113ed806101046000396000f300608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082d565b005b3480156101ec57600080fd5b506101f5610c7a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610ca0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cc5565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e06565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f5b565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b6020831015156106865780518252602082019150602081019050602083039250610661565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106ef57805182526020820191506020810190506020830392506106ca565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600061075791906112d4565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109af5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d602081101561096f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ba57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040516020018082805190602001908083835b602083101515610a4c5780518252602082019150602081019050602083039250610a27565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ab55780518252602082019150602081019050602083039250610a90565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610b3492919061131c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610bd2578082015181840152602081019050610bb7565b50505050905090810190601f168015610bff5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610d415780518252602082019150602081019050602083039250610d1c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610daa5780518252602082019150602081019050602083039250610d85565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9d57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561107957600080fd5b505af115801561108d573d6000803e3d6000fd5b505050506040513d60208110156110a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156110ee57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156111685780518252602082019150602081019050602083039250611143565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112c15780601f10611296576101008083540402835291602001916112c1565b820191906000526020600020905b8154815290600101906020018083116112a457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f106112fa5750611319565b601f016020900490600052602060002090810190611318919061139c565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061135d57805160ff191683800117855561138b565b8280016001018555821561138b579182015b8281111561138a57825182559160200191906001019061136f565b5b509050611398919061139c565b5090565b6113be91905b808211156113ba5760008160009055506001016113a2565b5090565b905600a165627a7a723058200b7338d370f5c51bda81e865923b6a07245eddeb45da5ce3da1bb5aa1f0b54c90029", + "deployedBytecode": "0x608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806349209fc814610088578063796d5836146101115780637b103999146101e05780638da5cb5b146102375780638fe001a51461028e578063f2fde38b1461032f578063fc2525ab14610372575b600080fd5b34801561009457600080fd5b5061010f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061047f565b005b34801561011d57600080fd5b506101de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061082d565b005b3480156101ec57600080fd5b506101f5610c7a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024357600080fd5b5061024c610ca0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561029a57600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610cc5565b604051808215151515815260200191505060405180910390f35b34801561033b57600080fd5b50610370600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e06565b005b34801561037e57600080fd5b506103f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610f5b565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610443578082015181840152602081019050610428565b50505050905090810190601f1680156104705780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106015750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561059757600080fd5b505af11580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561060c57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000826040516020018082805190602001908083835b6020831015156106865780518252602082019150602081019050602083039250610661565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156106ef57805182526020820191506020810190506020830392506106ca565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020600080820160006101000a81549060ff021916905560018201600061075791906112d4565b50507f7ed2574507414d87ae20434a5bae56eef5c81885cd02fc205ce20d24356542328282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a15050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109af5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d602081101561096f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ba57600080fd5b604080519081016040528060011515815260200182815250600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846040516020018082805190602001908083835b602083101515610a4c5780518252602082019150602081019050602083039250610a27565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610ab55780518252602082019150602081019050602083039250610a90565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548160ff0219169083151502179055506020820151816001019080519060200190610b3492919061131c565b509050507f73b2750ccaf84fc0cce582f3529304dc9e0b4b3b7e84ca44757a6abbfb9a2d81838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610bd2578082015181840152602081019050610bb7565b50505050905090810190601f168015610bff5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b83811015610c38578082015181840152602081019050610c1d565b50505050905090810190601f168015610c655780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836040516020018082805190602001908083835b602083101515610d415780518252602082019150602081019050602083039250610d1c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515610daa5780518252602082019150602081019050602083039250610d85565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060000160009054906101000a900460ff16905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9d57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000606060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806110e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561107957600080fd5b505af115801561108d573d6000803e3d6000fd5b505050506040513d60208110156110a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156110ee57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856040516020018082805190602001908083835b6020831015156111685780518252602082019150602081019050602083039250611143565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111d157805182526020820191506020810190506020830392506111ac565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002090508060000160009054906101000a900460ff1681600101808054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112c15780601f10611296576101008083540402835291602001916112c1565b820191906000526020600020905b8154815290600101906020018083116112a457829003601f168201915b5050505050905092509250509250929050565b50805460018160011615610100020316600290046000825580601f106112fa5750611319565b601f016020900490600052602060002090810190611318919061139c565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061135d57805160ff191683800117855561138b565b8280016001018555821561138b579182015b8281111561138a57825182559160200191906001019061136f565b5b509050611398919061139c565b5090565b6113be91905b808211156113ba5760008160009055506001016113a2565b5090565b905600a165627a7a723058200b7338d370f5c51bda81e865923b6a07245eddeb45da5ce3da1bb5aa1f0b54c90029", + "sourceMap": "112:1548:13:-;;;664:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;664:104:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;721:10:13;713:5;;:18;;;;;;;;;;;;;;;;;;752:9;741:8;;:20;;;;;;;;;;;;;;;;;;664:104;112:1548;;;;;;", + "deployedSourceMap": "112:1548:13:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1026:200;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1026:200:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;774:246;;8:9:-1;5:2;;;30:1;27;20:12;5:2;774:246:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;145:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;145:24:13;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;1481:177:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1481:177:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1232:243:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1232:243:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1232:243:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1026:200;583:5;;;;;;;;;;;569:19;;:10;:19;;;568:71;;;;608:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;608:30:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;608:30:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;608:30:13;;;;;;;;;;;;;;;;594:44;;:10;:44;;;568:71;560:80;;;;;;;;1118:6;:15;1125:7;1118:15;;;;;;;;;;;;;;;:54;1161:8;1144:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1144:26:13;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1144:26:13;;;1134:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1134:37:13;;;;;;;;;;;;;;;;1118:54;;;;;;;;;;;;;;;;;;1111:61;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;1187:32;1201:7;1210:8;1187:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1187:32:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1026:200;;:::o;774:246::-;583:5;;;;;;;;;;;569:19;;:10;:19;;;568:71;;;;608:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;608:30:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;608:30:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;608:30:13;;;;;;;;;;;;;;;;594:44;;:10;:44;;;568:71;560:80;;;;;;;;934:21;;;;;;;;;939:4;934:21;;;;;;945:9;934:21;;;877:6;:15;884:7;877:15;;;;;;;;;;;;;;;:54;920:8;903:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;903:26:13;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;903:26:13;;;893:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;893:37:13;;;;;;;;;;;;;;;;877:54;;;;;;;;;;;;;;;;;:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;970:43;984:7;993:8;1003:9;970:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;970:43:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;970:43:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;774:246;;;:::o;145:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;1481:177:13:-;1560:4;1583:6;:15;1590:7;1583:15;;;;;;;;;;;;;;;:54;1626:8;1609:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1609:26:13;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1609:26:13;;;1599:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1599:37:13;;;;;;;;;;;;;;;;1583:54;;;;;;;;;;;;;;;;;:68;;;;;;;;;;;;1576:75;;1481:177;;;;:::o;827:169:16:-;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;1232:243:13:-;1317:4;1323:6;1341:17;583:5;;;;;;;;;;;569:19;;:10;:19;;;568:71;;;;608:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;608:30:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;608:30:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;608:30:13;;;;;;;;;;;;;;;;594:44;;:10;:44;;;568:71;560:80;;;;;;;;1361:6;:15;1368:7;1361:15;;;;;;;;;;;;;;;:54;1404:8;1387:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1387:26:13;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1387:26:13;;;1377:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1377:37:13;;;;;;;;;;;;;;;;1361:54;;;;;;;;;;;;;;;;;1341:74;;1433:4;:18;;;;;;;;;;;;1453:4;:14;;1425:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1232:243;;;;;;:::o;112:1548::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./Registry.sol\";\n\ncontract Views is Ownable {\n\n Registry public registry;\n\n struct Data {\n bool _isRegistered;\n string _ipfsData;\n }\n\n // mapping from user addrsses and video ids to booleans\n mapping (address=> mapping (bytes32 => Data)) private _views;\n\n event LogCreateView(address _address, string _videoId, string _ipfsData);\n event LogRemoveView(address _address, string _videoId);\n\n modifier onlyOwnerOrAvatar() {\n require((msg.sender == owner) || (msg.sender == registry.getContract(\"Avatar\")));\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n function create(address _viewer, string _videoId, string _ipfsData) public onlyOwnerOrAvatar {\n _views[_viewer][keccak256(abi.encodePacked(_videoId))] = Data(true, _ipfsData);\n emit LogCreateView(_viewer, _videoId, _ipfsData);\n }\n\n function remove(address _viewer, string _videoId) public onlyOwnerOrAvatar {\n delete _views[_viewer][keccak256(abi.encodePacked(_videoId))];\n emit LogRemoveView(_viewer, _videoId);\n }\n\n function get(address _viewer, string _videoId) public view onlyOwnerOrAvatar returns(bool, string) {\n Data storage data = _views[_viewer][keccak256(abi.encodePacked(_videoId))];\n return (data._isRegistered, data._ipfsData);\n }\n\n function userViewedVideo(address _viewer, string _videoId) public view returns(bool) {\n return _views[_viewer][keccak256(abi.encodePacked(_videoId))]._isRegistered;\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Views.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Views.sol", + "exportedSymbols": { + "Views": [ + 2584 + ] + }, + "id": 2585, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2400, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:13" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2401, + "nodeType": "ImportDirective", + "scope": 2585, + "sourceUnit": 2950, + "src": "26:59:13", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 2402, + "nodeType": "ImportDirective", + "scope": 2585, + "sourceUnit": 1157, + "src": "86:24:13", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2403, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "130:7:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 2404, + "nodeType": "InheritanceSpecifier", + "src": "130:7:13" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2584, + "linearizedBaseContracts": [ + 2584, + 2949 + ], + "name": "Views", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 2406, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 2584, + "src": "145:24:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2405, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "145:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "canonicalName": "Views.Data", + "id": 2411, + "members": [ + { + "constant": false, + "id": 2408, + "name": "_isRegistered", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "198:18:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2407, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "198:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2410, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "226:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2409, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "226:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Data", + "nodeType": "StructDefinition", + "scope": 2584, + "src": "176:73:13", + "visibility": "public" + }, + { + "constant": false, + "id": 2417, + "name": "_views", + "nodeType": "VariableDeclaration", + "scope": 2584, + "src": "315:60:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" + }, + "typeName": { + "id": 2416, + "keyType": { + "id": 2412, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "324:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "315:45:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" + }, + "valueType": { + "id": 2415, + "keyType": { + "id": 2413, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "343:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "334:25:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data)" + }, + "valueType": { + "contractScope": null, + "id": 2414, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2411, + "src": "354:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 2425, + "name": "LogCreateView", + "nodeType": "EventDefinition", + "parameters": { + "id": 2424, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2419, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "402:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2418, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "402:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2421, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "420:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2420, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "420:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2423, + "indexed": false, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "437:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2422, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "437:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "401:53:13" + }, + "src": "382:73:13" + }, + { + "anonymous": false, + "documentation": null, + "id": 2431, + "name": "LogRemoveView", + "nodeType": "EventDefinition", + "parameters": { + "id": 2430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2427, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2431, + "src": "480:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "480:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2429, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2431, + "src": "498:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2428, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "498:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "479:35:13" + }, + "src": "460:55:13" + }, + { + "body": { + "id": 2451, + "nodeType": "Block", + "src": "550:108:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2434, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "569:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "569:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2436, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "583:5:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "569:19:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2438, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "568:21:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2439, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "594:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "594:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "417661746172", + "id": 2443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "629:8:13", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + }, + "value": "Avatar" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2441, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2406, + "src": "608:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "608:20:13", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "608:30:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "594:44:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2446, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "593:46:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "568:71:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2433, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "560:7:13", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "560:80:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2449, + "nodeType": "ExpressionStatement", + "src": "560:80:13" + }, + { + "id": 2450, + "nodeType": "PlaceholderStatement", + "src": "650:1:13" + } + ] + }, + "documentation": null, + "id": 2452, + "name": "onlyOwnerOrAvatar", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2432, + "nodeType": "ParameterList", + "parameters": [], + "src": "547:2:13" + }, + "src": "521:137:13", + "visibility": "internal" + }, + { + "body": { + "id": 2466, + "nodeType": "Block", + "src": "703:65:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2457, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "713:5:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2458, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "721:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "721:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "713:18:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2461, + "nodeType": "ExpressionStatement", + "src": "713:18:13" + }, + { + "expression": { + "argumentTypes": null, + "id": 2464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2462, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2406, + "src": "741:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2463, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2454, + "src": "752:9:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "741:20:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2465, + "nodeType": "ExpressionStatement", + "src": "741:20:13" + } + ] + }, + "documentation": null, + "id": 2467, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2455, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2454, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 2467, + "src": "676:18:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2453, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "676:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "675:20:13" + }, + "payable": false, + "returnParameters": { + "id": 2456, + "nodeType": "ParameterList", + "parameters": [], + "src": "703:0:13" + }, + "scope": 2584, + "src": "664:104:13", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2500, + "nodeType": "Block", + "src": "867:153:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2478, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "877:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2486, + "indexExpression": { + "argumentTypes": null, + "id": 2479, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2469, + "src": "884:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "877:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2487, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2483, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2471, + "src": "920:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2481, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "903:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "903:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "903:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2480, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "893:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "893:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "877:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "74727565", + "id": 2489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "939:4:13", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "argumentTypes": null, + "id": 2490, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2473, + "src": "945:9:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2488, + "name": "Data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2411, + "src": "934:4:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Data_$2411_storage_ptr_$", + "typeString": "type(struct Views.Data storage pointer)" + } + }, + "id": 2491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "934:21:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_memory", + "typeString": "struct Views.Data memory" + } + }, + "src": "877:78:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "id": 2493, + "nodeType": "ExpressionStatement", + "src": "877:78:13" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2495, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2469, + "src": "984:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2496, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2471, + "src": "993:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2497, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2473, + "src": "1003:9:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2494, + "name": "LogCreateView", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2425, + "src": "970:13:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,string memory)" + } + }, + "id": 2498, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "970:43:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2499, + "nodeType": "EmitStatement", + "src": "965:48:13" + } + ] + }, + "documentation": null, + "id": 2501, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2476, + "modifierName": { + "argumentTypes": null, + "id": 2475, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2452, + "src": "849:17:13", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "849:17:13" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2474, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2469, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2501, + "src": "790:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2468, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "790:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2471, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2501, + "src": "807:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2470, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "807:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2473, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2501, + "src": "824:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2472, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "824:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "789:52:13" + }, + "payable": false, + "returnParameters": { + "id": 2477, + "nodeType": "ParameterList", + "parameters": [], + "src": "867:0:13" + }, + "scope": 2584, + "src": "774:246:13", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2527, + "nodeType": "Block", + "src": "1101:125:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1111:61:13", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2510, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "1118:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2512, + "indexExpression": { + "argumentTypes": null, + "id": 2511, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "1125:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1118:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2519, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2516, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "1161:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2514, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1144:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1144:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1144:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2513, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1134:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1134:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1118:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2521, + "nodeType": "ExpressionStatement", + "src": "1111:61:13" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2523, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "1201:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2524, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "1210:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2522, + "name": "LogRemoveView", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2431, + "src": "1187:13:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 2525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1187:32:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2526, + "nodeType": "EmitStatement", + "src": "1182:37:13" + } + ] + }, + "documentation": null, + "id": 2528, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2508, + "modifierName": { + "argumentTypes": null, + "id": 2507, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2452, + "src": "1083:17:13", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1083:17:13" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2503, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2528, + "src": "1042:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2502, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1042:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2505, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2528, + "src": "1059:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1059:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1041:34:13" + }, + "payable": false, + "returnParameters": { + "id": 2509, + "nodeType": "ParameterList", + "parameters": [], + "src": "1101:0:13" + }, + "scope": 2584, + "src": "1026:200:13", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2560, + "nodeType": "Block", + "src": "1331:144:13", + "statements": [ + { + "assignments": [ + 2542 + ], + "declarations": [ + { + "constant": false, + "id": 2542, + "name": "data", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1341:17:13", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data" + }, + "typeName": { + "contractScope": null, + "id": 2541, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2411, + "src": "1341:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2553, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2543, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "1361:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2545, + "indexExpression": { + "argumentTypes": null, + "id": 2544, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2530, + "src": "1368:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1361:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2552, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2549, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2532, + "src": "1404:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2547, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1387:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2548, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1387:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1387:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2546, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1377:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1377:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1361:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1341:74:13" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2554, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2542, + "src": "1433:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data storage pointer" + } + }, + "id": 2555, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_isRegistered", + "nodeType": "MemberAccess", + "referencedDeclaration": 2408, + "src": "1433:18:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2556, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2542, + "src": "1453:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data storage pointer" + } + }, + "id": 2557, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 2410, + "src": "1453:14:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "id": 2558, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1432:36:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_string_storage_$", + "typeString": "tuple(bool,string storage ref)" + } + }, + "functionReturnParameters": 2540, + "id": 2559, + "nodeType": "Return", + "src": "1425:43:13" + } + ] + }, + "documentation": null, + "id": 2561, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [ + { + "arguments": null, + "id": 2535, + "modifierName": { + "argumentTypes": null, + "id": 2534, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2452, + "src": "1291:17:13", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1291:17:13" + } + ], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2533, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2530, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1245:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2529, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1245:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2532, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1262:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2531, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1262:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1244:34:13" + }, + "payable": false, + "returnParameters": { + "id": 2540, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2537, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1317:4:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2536, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1317:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2539, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1323:6:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2538, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1323:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1316:14:13" + }, + "scope": 2584, + "src": "1232:243:13", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2582, + "nodeType": "Block", + "src": "1566:92:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2570, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "1583:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2572, + "indexExpression": { + "argumentTypes": null, + "id": 2571, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "1590:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1583:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2579, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2576, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2565, + "src": "1626:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2574, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1609:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1609:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1609:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2573, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1599:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1599:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1583:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "id": 2580, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_isRegistered", + "nodeType": "MemberAccess", + "referencedDeclaration": 2408, + "src": "1583:68:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 2569, + "id": 2581, + "nodeType": "Return", + "src": "1576:75:13" + } + ] + }, + "documentation": null, + "id": 2583, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userViewedVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2566, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2563, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2583, + "src": "1506:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2562, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1506:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2565, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2583, + "src": "1523:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2564, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1523:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1505:34:13" + }, + "payable": false, + "returnParameters": { + "id": 2569, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2568, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2583, + "src": "1560:4:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2567, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1560:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1559:6:13" + }, + "scope": 2584, + "src": "1481:177:13", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2585, + "src": "112:1548:13" + } + ], + "src": "0:1661:13" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Views.sol", + "exportedSymbols": { + "Views": [ + 2584 + ] + }, + "id": 2585, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2400, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:13" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2401, + "nodeType": "ImportDirective", + "scope": 2585, + "sourceUnit": 2950, + "src": "26:59:13", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 2402, + "nodeType": "ImportDirective", + "scope": 2585, + "sourceUnit": 1157, + "src": "86:24:13", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2403, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "130:7:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 2404, + "nodeType": "InheritanceSpecifier", + "src": "130:7:13" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2584, + "linearizedBaseContracts": [ + 2584, + 2949 + ], + "name": "Views", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 2406, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 2584, + "src": "145:24:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2405, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "145:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "canonicalName": "Views.Data", + "id": 2411, + "members": [ + { + "constant": false, + "id": 2408, + "name": "_isRegistered", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "198:18:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2407, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "198:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2410, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "226:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2409, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "226:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Data", + "nodeType": "StructDefinition", + "scope": 2584, + "src": "176:73:13", + "visibility": "public" + }, + { + "constant": false, + "id": 2417, + "name": "_views", + "nodeType": "VariableDeclaration", + "scope": 2584, + "src": "315:60:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" + }, + "typeName": { + "id": 2416, + "keyType": { + "id": 2412, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "324:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "315:45:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" + }, + "valueType": { + "id": 2415, + "keyType": { + "id": 2413, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "343:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "334:25:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data)" + }, + "valueType": { + "contractScope": null, + "id": 2414, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2411, + "src": "354:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data" + } + } + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 2425, + "name": "LogCreateView", + "nodeType": "EventDefinition", + "parameters": { + "id": 2424, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2419, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "402:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2418, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "402:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2421, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "420:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2420, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "420:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2423, + "indexed": false, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "437:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2422, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "437:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "401:53:13" + }, + "src": "382:73:13" + }, + { + "anonymous": false, + "documentation": null, + "id": 2431, + "name": "LogRemoveView", + "nodeType": "EventDefinition", + "parameters": { + "id": 2430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2427, + "indexed": false, + "name": "_address", + "nodeType": "VariableDeclaration", + "scope": 2431, + "src": "480:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "480:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2429, + "indexed": false, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2431, + "src": "498:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2428, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "498:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "479:35:13" + }, + "src": "460:55:13" + }, + { + "body": { + "id": 2451, + "nodeType": "Block", + "src": "550:108:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2434, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "569:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "569:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2436, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "583:5:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "569:19:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2438, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "568:21:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2439, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "594:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "594:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "417661746172", + "id": 2443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "629:8:13", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + }, + "value": "Avatar" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2441, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2406, + "src": "608:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "608:20:13", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "608:30:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "594:44:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2446, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "593:46:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "568:71:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2433, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "560:7:13", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "560:80:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2449, + "nodeType": "ExpressionStatement", + "src": "560:80:13" + }, + { + "id": 2450, + "nodeType": "PlaceholderStatement", + "src": "650:1:13" + } + ] + }, + "documentation": null, + "id": 2452, + "name": "onlyOwnerOrAvatar", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2432, + "nodeType": "ParameterList", + "parameters": [], + "src": "547:2:13" + }, + "src": "521:137:13", + "visibility": "internal" + }, + { + "body": { + "id": 2466, + "nodeType": "Block", + "src": "703:65:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2457, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "713:5:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2458, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "721:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "721:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "713:18:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2461, + "nodeType": "ExpressionStatement", + "src": "713:18:13" + }, + { + "expression": { + "argumentTypes": null, + "id": 2464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2462, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2406, + "src": "741:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2463, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2454, + "src": "752:9:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "741:20:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2465, + "nodeType": "ExpressionStatement", + "src": "741:20:13" + } + ] + }, + "documentation": null, + "id": 2467, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2455, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2454, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 2467, + "src": "676:18:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2453, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "676:8:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "675:20:13" + }, + "payable": false, + "returnParameters": { + "id": 2456, + "nodeType": "ParameterList", + "parameters": [], + "src": "703:0:13" + }, + "scope": 2584, + "src": "664:104:13", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2500, + "nodeType": "Block", + "src": "867:153:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2478, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "877:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2486, + "indexExpression": { + "argumentTypes": null, + "id": 2479, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2469, + "src": "884:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "877:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2487, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2483, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2471, + "src": "920:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2481, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "903:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "903:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "903:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2480, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "893:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "893:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "877:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "74727565", + "id": 2489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "939:4:13", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "argumentTypes": null, + "id": 2490, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2473, + "src": "945:9:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2488, + "name": "Data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2411, + "src": "934:4:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Data_$2411_storage_ptr_$", + "typeString": "type(struct Views.Data storage pointer)" + } + }, + "id": 2491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "934:21:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_memory", + "typeString": "struct Views.Data memory" + } + }, + "src": "877:78:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "id": 2493, + "nodeType": "ExpressionStatement", + "src": "877:78:13" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2495, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2469, + "src": "984:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2496, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2471, + "src": "993:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 2497, + "name": "_ipfsData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2473, + "src": "1003:9:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2494, + "name": "LogCreateView", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2425, + "src": "970:13:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,string memory)" + } + }, + "id": 2498, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "970:43:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2499, + "nodeType": "EmitStatement", + "src": "965:48:13" + } + ] + }, + "documentation": null, + "id": 2501, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2476, + "modifierName": { + "argumentTypes": null, + "id": 2475, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2452, + "src": "849:17:13", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "849:17:13" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2474, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2469, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2501, + "src": "790:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2468, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "790:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2471, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2501, + "src": "807:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2470, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "807:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2473, + "name": "_ipfsData", + "nodeType": "VariableDeclaration", + "scope": 2501, + "src": "824:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2472, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "824:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "789:52:13" + }, + "payable": false, + "returnParameters": { + "id": 2477, + "nodeType": "ParameterList", + "parameters": [], + "src": "867:0:13" + }, + "scope": 2584, + "src": "774:246:13", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2527, + "nodeType": "Block", + "src": "1101:125:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1111:61:13", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2510, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "1118:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2512, + "indexExpression": { + "argumentTypes": null, + "id": 2511, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "1125:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1118:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2519, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2516, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "1161:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2514, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1144:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1144:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1144:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2513, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1134:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1134:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1118:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2521, + "nodeType": "ExpressionStatement", + "src": "1111:61:13" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2523, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "1201:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2524, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "1210:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2522, + "name": "LogRemoveView", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2431, + "src": "1187:13:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 2525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1187:32:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2526, + "nodeType": "EmitStatement", + "src": "1182:37:13" + } + ] + }, + "documentation": null, + "id": 2528, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2508, + "modifierName": { + "argumentTypes": null, + "id": 2507, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2452, + "src": "1083:17:13", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1083:17:13" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2503, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2528, + "src": "1042:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2502, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1042:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2505, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2528, + "src": "1059:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1059:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1041:34:13" + }, + "payable": false, + "returnParameters": { + "id": 2509, + "nodeType": "ParameterList", + "parameters": [], + "src": "1101:0:13" + }, + "scope": 2584, + "src": "1026:200:13", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2560, + "nodeType": "Block", + "src": "1331:144:13", + "statements": [ + { + "assignments": [ + 2542 + ], + "declarations": [ + { + "constant": false, + "id": 2542, + "name": "data", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1341:17:13", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data" + }, + "typeName": { + "contractScope": null, + "id": 2541, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2411, + "src": "1341:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2553, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2543, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "1361:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2545, + "indexExpression": { + "argumentTypes": null, + "id": 2544, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2530, + "src": "1368:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1361:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2552, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2549, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2532, + "src": "1404:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2547, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1387:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2548, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1387:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1387:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2546, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1377:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1377:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1361:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1341:74:13" + }, + { + "expression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2554, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2542, + "src": "1433:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data storage pointer" + } + }, + "id": 2555, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_isRegistered", + "nodeType": "MemberAccess", + "referencedDeclaration": 2408, + "src": "1433:18:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2556, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2542, + "src": "1453:4:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", + "typeString": "struct Views.Data storage pointer" + } + }, + "id": 2557, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_ipfsData", + "nodeType": "MemberAccess", + "referencedDeclaration": 2410, + "src": "1453:14:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "id": 2558, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1432:36:13", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_string_storage_$", + "typeString": "tuple(bool,string storage ref)" + } + }, + "functionReturnParameters": 2540, + "id": 2559, + "nodeType": "Return", + "src": "1425:43:13" + } + ] + }, + "documentation": null, + "id": 2561, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [ + { + "arguments": null, + "id": 2535, + "modifierName": { + "argumentTypes": null, + "id": 2534, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2452, + "src": "1291:17:13", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1291:17:13" + } + ], + "name": "get", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2533, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2530, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1245:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2529, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1245:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2532, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1262:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2531, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1262:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1244:34:13" + }, + "payable": false, + "returnParameters": { + "id": 2540, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2537, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1317:4:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2536, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1317:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2539, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2561, + "src": "1323:6:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2538, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1323:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1316:14:13" + }, + "scope": 2584, + "src": "1232:243:13", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2582, + "nodeType": "Block", + "src": "1566:92:13", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2570, + "name": "_views", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2417, + "src": "1583:6:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", + "typeString": "mapping(address => mapping(bytes32 => struct Views.Data storage ref))" + } + }, + "id": 2572, + "indexExpression": { + "argumentTypes": null, + "id": 2571, + "name": "_viewer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "1590:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1583:15:13", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", + "typeString": "mapping(bytes32 => struct Views.Data storage ref)" + } + }, + "id": 2579, + "indexExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2576, + "name": "_videoId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2565, + "src": "1626:8:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2574, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1609:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1609:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1609:26:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2573, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1599:9:13", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1599:37:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1583:54:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2411_storage", + "typeString": "struct Views.Data storage ref" + } + }, + "id": 2580, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_isRegistered", + "nodeType": "MemberAccess", + "referencedDeclaration": 2408, + "src": "1583:68:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 2569, + "id": 2581, + "nodeType": "Return", + "src": "1576:75:13" + } + ] + }, + "documentation": null, + "id": 2583, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "userViewedVideo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2566, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2563, + "name": "_viewer", + "nodeType": "VariableDeclaration", + "scope": 2583, + "src": "1506:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2562, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1506:7:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2565, + "name": "_videoId", + "nodeType": "VariableDeclaration", + "scope": 2583, + "src": "1523:15:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2564, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1523:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1505:34:13" + }, + "payable": false, + "returnParameters": { + "id": 2569, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2568, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2583, + "src": "1560:4:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2567, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1560:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1559:6:13" + }, + "scope": 2584, + "src": "1481:177:13", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2585, + "src": "112:1548:13" + } + ], + "src": "0:1661:13" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.064Z" +} \ No newline at end of file diff --git a/build/contracts/Vouchers.json b/build/contracts/Vouchers.json index 55c1d12..300e3d4 100644 --- a/build/contracts/Vouchers.json +++ b/build/contracts/Vouchers.json @@ -1 +1,5894 @@ -{"contractName":"Vouchers","abi":[{"constant":true,"inputs":[],"name":"registry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"vouchers","outputs":[{"name":"_claimant","type":"address"},{"name":"_amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_registry","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"LogCreateVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"}],"name":"LogRemoveVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hashedVoucher","type":"bytes32"},{"indexed":false,"name":"_voucher","type":"string"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_claimant","type":"address"}],"name":"LogRedeemVoucher","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"create","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_hashedVoucher","type":"bytes32"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_voucher","type":"string"}],"name":"hashVoucher","outputs":[{"name":"_hashedVoucher","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_voucher","type":"string"}],"name":"redeem","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051602080610fc883398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ec4806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610443565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610816565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b5061020261083c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b506102736004803603810190808035600019169060200190929190505050610861565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a7d565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610cff565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d43565b005b6000816040516020018082805190602001908083835b6020831015156103a65780518252602082019150602081019050602083039250610381565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040f57805182526020820191506020810190506020830392506103ea565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806104528561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561048457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156104e357600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561060257600080fd5b505af1158015610616573d6000803e3d6000fd5b505050506040513d602081101561062c57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106e657600080fd5b505af11580156106fa573d6000803e3d6000fd5b505050506040513d602081101561071057600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050506040513d60208110156109a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ee57600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610bff5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d6020811015610bbf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c0a57600080fd5b600081111515610c1957600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dda57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582048d6374bd30d6cdf8f6815006ef08ffbe1cfd318af71dc8ff957cf8ab198b7790029"} \ No newline at end of file +{ + "contractName": "Vouchers", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "registry", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "bytes32" + } + ], + "name": "vouchers", + "outputs": [ + { + "name": "_claimant", + "type": "address" + }, + { + "name": "_amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "name": "_registry", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "payable": true, + "stateMutability": "payable", + "type": "fallback" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_hashedVoucher", + "type": "bytes32" + }, + { + "indexed": false, + "name": "_amount", + "type": "uint256" + } + ], + "name": "LogCreateVoucher", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_hashedVoucher", + "type": "bytes32" + } + ], + "name": "LogRemoveVoucher", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "_hashedVoucher", + "type": "bytes32" + }, + { + "indexed": false, + "name": "_voucher", + "type": "string" + }, + { + "indexed": false, + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "name": "_claimant", + "type": "address" + } + ], + "name": "LogRedeemVoucher", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_hashedVoucher", + "type": "bytes32" + }, + { + "name": "_amount", + "type": "uint256" + } + ], + "name": "create", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_hashedVoucher", + "type": "bytes32" + } + ], + "name": "remove", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_voucher", + "type": "string" + } + ], + "name": "hashVoucher", + "outputs": [ + { + "name": "_hashedVoucher", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_voucher", + "type": "string" + } + ], + "name": "redeem", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051602080610fc883398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610ec4806101046000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610443565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610816565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b5061020261083c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b506102736004803603810190808035600019169060200190929190505050610861565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a7d565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610cff565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d43565b005b6000816040516020018082805190602001908083835b6020831015156103a65780518252602082019150602081019050602083039250610381565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040f57805182526020820191506020810190506020830392506103ea565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806104528561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561048457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156104e357600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561060257600080fd5b505af1158015610616573d6000803e3d6000fd5b505050506040513d602081101561062c57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106e657600080fd5b505af11580156106fa573d6000803e3d6000fd5b505050506040513d602081101561071057600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050506040513d60208110156109a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ee57600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610bff5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d6020811015610bbf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c0a57600080fd5b600081111515610c1957600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dda57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a723058209217f41b4f9675f2f1bbdfa0090583aa437b2099a3fa0f2e6cd2855528037fc30029", + "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306810649146100905780631222c25a146101155780637b103999146101965780638da5cb5b146101ed57806395bc267314610244578063a042c13214610275578063e4c96ac4146102b0578063f2fde38b14610328575b005b34801561009c57600080fd5b506100f7600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061036b565b60405180826000191660001916815260200191505060405180910390f35b34801561012157600080fd5b5061017c600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610443565b604051808215151515815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610816565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101f957600080fd5b5061020261083c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025057600080fd5b506102736004803603810190808035600019169060200190929190505050610861565b005b34801561028157600080fd5b506102ae600480360381019080803560001916906020019092919080359060200190929190505050610a7d565b005b3480156102bc57600080fd5b506102df6004803603810190808035600019169060200190929190505050610cff565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b34801561033457600080fd5b50610369600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d43565b005b6000816040516020018082805190602001908083835b6020831015156103a65780518252602082019150602081019050602083039250610381565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b60208310151561040f57805182526020820191506020810190506020830392506103ea565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050919050565b6000806000806104528561036b565b925060026000846000191660001916815260200190815260200160002091506000826001015411151561048457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156104e357600080fd5b3360026000856000191660001916815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600c8152602001807f50617261746969546f6b656e0000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561060257600080fd5b505af1158015610616573d6000803e3d6000fd5b505050506040513d602081101561062c57600080fd5b810190808051906020019092919050505090508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3384600101546040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156106e657600080fd5b505af11580156106fa573d6000803e3d6000fd5b505050506040513d602081101561071057600080fd5b8101908080519060200190929190505050507f2eaff7d7b1644e86930213c456e12bfdad67722d421620a44206c51cc08209398386846001015433604051808560001916600019168152602001806020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825285818151815260200191508051906020019080838360005b838110156107d15780820151818401526020810190506107b6565b50505050905090810190601f1680156107fe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806109e35750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050506040513d60208110156109a357600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156109ee57600080fd5b600260008260001916600019168152602001908152602001600020600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550507f14e1cb1f041e31ab0914847975c8ea1e84618c1b2f051b668e413a18a78601cf8160405180826000191660001916815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610bff5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663358177736040518163ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825260068152602001807f4176617461720000000000000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d6020811015610bbf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515610c0a57600080fd5b600081111515610c1957600080fd5b6040805190810160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020018281525060026000846000191660001916815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101559050507f53dea2f832632fad149738c97762fd3c519858d023692f10c21ea406b857a77882826040518083600019166000191681526020018281526020019250505060405180910390a15050565b60026020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d9e57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610dda57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a723058209217f41b4f9675f2f1bbdfa0090583aa437b2099a3fa0f2e6cd2855528037fc30029", + "sourceMap": "141:2302:14:-;;;694:104;8:9:-1;5:2;;;30:1;27;20:12;5:2;694:104:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;502:10:16;494:5;;:18;;;;;;;;;;;;;;;;;;751:10:14;743:5;;:18;;;;;;;;;;;;;;;;;;782:9;771:8;;:20;;;;;;;;;;;;;;;;;;694:104;141:2302;;;;;;", + "deployedSourceMap": "141:2302:14:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1358:143;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1358:143:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1715:726;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1715:726:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;177:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;177:24:14;;;;;;;;;;;;;;;;;;;;;;;;;;;238:20:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:16;;;;;;;;;;;;;;;;;;;;;;;;;;;1113:160:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1113:160:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;873:234;;8:9:-1;5:2;;;30:1;27;20:12;5:2;873:234:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;282:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;282:41:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;827:169:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;827:169:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;1358:143:14;1416:22;1484:8;1467:26;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1467:26:14;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1467:26:14;;;1457:37;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1457:37:14;;;;;;;;;;;;;;;;1450:44;;1358:143;;;:::o;1715:726::-;1763:4;1846:21;1901:20;2225:18;1870:21;1882:8;1870:11;:21::i;:::-;1846:45;;1924:8;:23;1933:13;1924:23;;;;;;;;;;;;;;;;;1901:46;;1983:1;1965:7;:15;;;:19;1957:28;;;;;;;;2032:1;2003:31;;:7;:17;;;;;;;;;;;;:31;;;1995:40;;;;;;;;2149:10;2113:8;:23;2122:13;2113:23;;;;;;;;;;;;;;;;;:33;;;:46;;;;;;;;;;;;;;;;;;2259:8;;;;;;;;;;;:20;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2259:36:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2259:36:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2259:36:14;;;;;;;;;;;;;;;;2225:71;;2306:5;:14;;;2321:10;2333:7;:15;;;2306:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2306:43:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2306:43:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2306:43:14;;;;;;;;;;;;;;;;;2364:70;2381:13;2396:8;2406:7;:15;;;2423:10;2364:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2364:70:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1715:726;;;;;;:::o;177:24::-;;;;;;;;;;;;;:::o;238:20:16:-;;;;;;;;;;;;;:::o;1113:160:14:-;613:5;;;;;;;;;;;599:19;;:10;:19;;;598:71;;;;638:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;638:30:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;638:30:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;638:30:14;;;;;;;;;;;;;;;;624:44;;:10;:44;;;598:71;590:80;;;;;;;;1195:8;:24;1204:14;1195:24;;;;;;;;;;;;;;;;;;1188:31;;;;;;;;;;;;;;;;;;;;;;;1234:32;1251:14;1234:32;;;;;;;;;;;;;;;;;;;;;;;;1113:160;:::o;873:234::-;613:5;;;;;;;;;;;599:19;;:10;:19;;;598:71;;;;638:8;;;;;;;;;;;:20;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;638:30:14;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;638:30:14;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;638:30:14;;;;;;;;;;;;;;;;624:44;;:10;:44;;;598:71;590:80;;;;;;;;980:1;970:7;:11;962:20;;;;;;;;1019:25;;;;;;;;;1032:1;1019:25;;;;;;1036:7;1019:25;;;992:8;:24;1001:14;992:24;;;;;;;;;;;;;;;;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1059:41;1076:14;1092:7;1059:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;873:234;;:::o;282:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;827:169:16:-;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.18;\n\nimport \"zeppelin-solidity/contracts/ownership/Ownable.sol\";\nimport \"./ParatiiToken.sol\";\nimport \"./Registry.sol\";\n\ncontract Vouchers is Ownable {\n\n Registry public registry;\n\n struct Data {\n address _claimant;\n uint _amount;\n }\n\n mapping (bytes32 => Data) public vouchers;\n\n event LogCreateVoucher(bytes32 _hashedVoucher, uint _amount);\n event LogRemoveVoucher(bytes32 _hashedVoucher);\n event LogRedeemVoucher(bytes32 _hashedVoucher, string _voucher, uint _amount, address _claimant);\n\n modifier onlyOwnerOrAvatar() {\n require((msg.sender == owner) || (msg.sender == registry.getContract(\"Avatar\")));\n _;\n }\n\n constructor(Registry _registry) public {\n owner = msg.sender;\n registry = _registry;\n }\n\n // make this contract payable\n function() public payable { }\n\n function create(bytes32 _hashedVoucher, uint _amount) public onlyOwnerOrAvatar {\n require(_amount > 0);\n vouchers[_hashedVoucher] = Data(address(0), _amount);\n emit LogCreateVoucher(_hashedVoucher, _amount);\n }\n\n function remove(bytes32 _hashedVoucher) public onlyOwnerOrAvatar {\n delete vouchers[_hashedVoucher];\n emit LogRemoveVoucher(_hashedVoucher);\n }\n\n /* A convenience function that hashes the voucher, to be called locally */\n function hashVoucher(string _voucher) public pure returns(bytes32 _hashedVoucher) {\n return keccak256(abi.encodePacked(_voucher));\n }\n\n /*\n * Redeem the Voucher. UNTRUSTED.\n * NOTE: This _is_ vulnerable to front-running attacks (the attacker can intercept the transaction,\n extract the voucher, and redeem it himself)\n */\n function redeem(string _voucher) public returns(bool) {\n // the voucher must exist and not have been redeemed (yet)\n bytes32 hashedVoucher = hashVoucher(_voucher);\n Data storage voucher = vouchers[hashedVoucher];\n require(voucher._amount > 0);\n require(voucher._claimant == address(0));\n // invalidate the voucher, and send the money to the sender\n vouchers[hashedVoucher]._claimant = msg.sender;\n // get the pti token contract from the registry\n ParatiiToken token = ParatiiToken(registry.getContract(\"ParatiiToken\"));\n token.transfer(msg.sender, voucher._amount);\n emit LogRedeemVoucher(hashedVoucher, _voucher, voucher._amount, msg.sender);\n }\n}\n", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Vouchers.sol", + "ast": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Vouchers.sol", + "exportedSymbols": { + "Vouchers": [ + 2798 + ] + }, + "id": 2799, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2586, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:14" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2587, + "nodeType": "ImportDirective", + "scope": 2799, + "sourceUnit": 2950, + "src": "26:59:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 2588, + "nodeType": "ImportDirective", + "scope": 2799, + "sourceUnit": 905, + "src": "86:28:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 2589, + "nodeType": "ImportDirective", + "scope": 2799, + "sourceUnit": 1157, + "src": "115:24:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2590, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "162:7:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 2591, + "nodeType": "InheritanceSpecifier", + "src": "162:7:14" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2798, + "linearizedBaseContracts": [ + 2798, + 2949 + ], + "name": "Vouchers", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 2593, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "177:24:14", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2592, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "177:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "canonicalName": "Vouchers.Data", + "id": 2598, + "members": [ + { + "constant": false, + "id": 2595, + "name": "_claimant", + "nodeType": "VariableDeclaration", + "scope": 2598, + "src": "230:17:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2594, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "230:7:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2597, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2598, + "src": "257:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2596, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "257:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Data", + "nodeType": "StructDefinition", + "scope": 2798, + "src": "208:68:14", + "visibility": "public" + }, + { + "constant": false, + "id": 2602, + "name": "vouchers", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "282:41:14", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data)" + }, + "typeName": { + "id": 2601, + "keyType": { + "id": 2599, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "291:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "282:25:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data)" + }, + "valueType": { + "contractScope": null, + "id": 2600, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2598, + "src": "302:4:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 2608, + "name": "LogCreateVoucher", + "nodeType": "EventDefinition", + "parameters": { + "id": 2607, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2604, + "indexed": false, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2608, + "src": "353:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2603, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "353:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2606, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2608, + "src": "377:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2605, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "377:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "352:38:14" + }, + "src": "330:61:14" + }, + { + "anonymous": false, + "documentation": null, + "id": 2612, + "name": "LogRemoveVoucher", + "nodeType": "EventDefinition", + "parameters": { + "id": 2611, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2610, + "indexed": false, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2612, + "src": "419:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2609, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "419:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "418:24:14" + }, + "src": "396:47:14" + }, + { + "anonymous": false, + "documentation": null, + "id": 2622, + "name": "LogRedeemVoucher", + "nodeType": "EventDefinition", + "parameters": { + "id": 2621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2614, + "indexed": false, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "471:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2613, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "471:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2616, + "indexed": false, + "name": "_voucher", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "495:15:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2615, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "495:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2618, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "512:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2617, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "512:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2620, + "indexed": false, + "name": "_claimant", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "526:17:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2619, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "526:7:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "470:74:14" + }, + "src": "448:97:14" + }, + { + "body": { + "id": 2642, + "nodeType": "Block", + "src": "580:108:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2625, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "599:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "599:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2627, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "613:5:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "599:19:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2629, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "598:21:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2630, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "624:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "624:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "417661746172", + "id": 2634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "659:8:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + }, + "value": "Avatar" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2632, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2593, + "src": "638:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "638:20:14", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "638:30:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "624:44:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2637, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "623:46:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "598:71:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2624, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "590:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "590:80:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2640, + "nodeType": "ExpressionStatement", + "src": "590:80:14" + }, + { + "id": 2641, + "nodeType": "PlaceholderStatement", + "src": "680:1:14" + } + ] + }, + "documentation": null, + "id": 2643, + "name": "onlyOwnerOrAvatar", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2623, + "nodeType": "ParameterList", + "parameters": [], + "src": "577:2:14" + }, + "src": "551:137:14", + "visibility": "internal" + }, + { + "body": { + "id": 2657, + "nodeType": "Block", + "src": "733:65:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2648, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "743:5:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2649, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "751:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "751:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "743:18:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2652, + "nodeType": "ExpressionStatement", + "src": "743:18:14" + }, + { + "expression": { + "argumentTypes": null, + "id": 2655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2653, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2593, + "src": "771:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2654, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2645, + "src": "782:9:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "771:20:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2656, + "nodeType": "ExpressionStatement", + "src": "771:20:14" + } + ] + }, + "documentation": null, + "id": 2658, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2646, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2645, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 2658, + "src": "706:18:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2644, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "706:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "705:20:14" + }, + "payable": false, + "returnParameters": { + "id": 2647, + "nodeType": "ParameterList", + "parameters": [], + "src": "733:0:14" + }, + "scope": 2798, + "src": "694:104:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2661, + "nodeType": "Block", + "src": "864:3:14", + "statements": [] + }, + "documentation": null, + "id": 2662, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2659, + "nodeType": "ParameterList", + "parameters": [], + "src": "846:2:14" + }, + "payable": true, + "returnParameters": { + "id": 2660, + "nodeType": "ParameterList", + "parameters": [], + "src": "864:0:14" + }, + "scope": 2798, + "src": "838:29:14", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2693, + "nodeType": "Block", + "src": "952:155:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2672, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2666, + "src": "970:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2673, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "980:1:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "970:11:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2671, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "962:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "962:20:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2676, + "nodeType": "ExpressionStatement", + "src": "962:20:14" + }, + { + "expression": { + "argumentTypes": null, + "id": 2686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2677, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "992:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2679, + "indexExpression": { + "argumentTypes": null, + "id": 2678, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2664, + "src": "1001:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "992:24:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1032:1:14", + "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": 2681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1024:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1024:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2684, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2666, + "src": "1036:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2680, + "name": "Data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2598, + "src": "1019:4:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Data_$2598_storage_ptr_$", + "typeString": "type(struct Vouchers.Data storage pointer)" + } + }, + "id": 2685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1019:25:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_memory", + "typeString": "struct Vouchers.Data memory" + } + }, + "src": "992:52:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "id": 2687, + "nodeType": "ExpressionStatement", + "src": "992:52:14" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2689, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2664, + "src": "1076:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 2690, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2666, + "src": "1092:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2688, + "name": "LogCreateVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2608, + "src": "1059:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (bytes32,uint256)" + } + }, + "id": 2691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1059:41:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2692, + "nodeType": "EmitStatement", + "src": "1054:46:14" + } + ] + }, + "documentation": null, + "id": 2694, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2669, + "modifierName": { + "argumentTypes": null, + "id": 2668, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2643, + "src": "934:17:14", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "934:17:14" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2667, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2664, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2694, + "src": "889:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2663, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "889:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2666, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2694, + "src": "913:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2665, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "913:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "888:38:14" + }, + "payable": false, + "returnParameters": { + "id": 2670, + "nodeType": "ParameterList", + "parameters": [], + "src": "952:0:14" + }, + "scope": 2798, + "src": "873:234:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2710, + "nodeType": "Block", + "src": "1178:95:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1188:31:14", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2701, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "1195:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2703, + "indexExpression": { + "argumentTypes": null, + "id": 2702, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2696, + "src": "1204:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1195:24:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2705, + "nodeType": "ExpressionStatement", + "src": "1188:31:14" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2707, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2696, + "src": "1251:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 2706, + "name": "LogRemoveVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2612, + "src": "1234:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", + "typeString": "function (bytes32)" + } + }, + "id": 2708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1234:32:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2709, + "nodeType": "EmitStatement", + "src": "1229:37:14" + } + ] + }, + "documentation": null, + "id": 2711, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2699, + "modifierName": { + "argumentTypes": null, + "id": 2698, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2643, + "src": "1160:17:14", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1160:17:14" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2696, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2711, + "src": "1129:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2695, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1129:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1128:24:14" + }, + "payable": false, + "returnParameters": { + "id": 2700, + "nodeType": "ParameterList", + "parameters": [], + "src": "1178:0:14" + }, + "scope": 2798, + "src": "1113:160:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2725, + "nodeType": "Block", + "src": "1440:61:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2721, + "name": "_voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2713, + "src": "1484:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2719, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1467:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1467:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1467:26:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2718, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1457:9:14", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1457:37:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 2717, + "id": 2724, + "nodeType": "Return", + "src": "1450:44:14" + } + ] + }, + "documentation": null, + "id": 2726, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "hashVoucher", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2713, + "name": "_voucher", + "nodeType": "VariableDeclaration", + "scope": 2726, + "src": "1379:15:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2712, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1379:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1378:17:14" + }, + "payable": false, + "returnParameters": { + "id": 2717, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2716, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2726, + "src": "1416:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2715, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1416:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1415:24:14" + }, + "scope": 2798, + "src": "1358:143:14", + "stateMutability": "pure", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2796, + "nodeType": "Block", + "src": "1769:672:14", + "statements": [ + { + "assignments": [ + 2734 + ], + "declarations": [ + { + "constant": false, + "id": 2734, + "name": "hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1846:21:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2733, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1846:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2738, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2736, + "name": "_voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2728, + "src": "1882:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2735, + "name": "hashVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2726, + "src": "1870:11:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (string memory) pure returns (bytes32)" + } + }, + "id": 2737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1870:21:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1846:45:14" + }, + { + "assignments": [ + 2740 + ], + "declarations": [ + { + "constant": false, + "id": 2740, + "name": "voucher", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1901:20:14", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data" + }, + "typeName": { + "contractScope": null, + "id": 2739, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2598, + "src": "1901:4:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2744, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2741, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "1924:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2743, + "indexExpression": { + "argumentTypes": null, + "id": 2742, + "name": "hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2734, + "src": "1933:13:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1924:23:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1901:46:14" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2746, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "1965:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2747, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 2597, + "src": "1965:15:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1983:1:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1965:19:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2745, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1957:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2750, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1957:28:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2751, + "nodeType": "ExpressionStatement", + "src": "1957:28:14" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2753, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "2003:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2754, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_claimant", + "nodeType": "MemberAccess", + "referencedDeclaration": 2595, + "src": "2003:17:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2756, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2032:1:14", + "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": 2755, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2024:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2024:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2003:31:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2752, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1995:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1995:40:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2760, + "nodeType": "ExpressionStatement", + "src": "1995:40:14" + }, + { + "expression": { + "argumentTypes": null, + "id": 2767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2761, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "2113:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2763, + "indexExpression": { + "argumentTypes": null, + "id": 2762, + "name": "hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2734, + "src": "2122:13:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2113:23:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "id": 2764, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_claimant", + "nodeType": "MemberAccess", + "referencedDeclaration": 2595, + "src": "2113:33:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2765, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2149:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2149:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2113:46:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2768, + "nodeType": "ExpressionStatement", + "src": "2113:46:14" + }, + { + "assignments": [ + 2770 + ], + "declarations": [ + { + "constant": false, + "id": 2770, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "2225:18:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 2769, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "2225:12:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2777, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50617261746969546f6b656e", + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2280:14:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2772, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2593, + "src": "2259:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "2259:20:14", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2259:36:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2771, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "2246:12:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 2776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2246:50:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2225:71:14" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2781, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2321:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2321:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2783, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "2333:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2784, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 2597, + "src": "2333:15:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 2778, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2770, + "src": "2306:5:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 2780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 3013, + "src": "2306:14:14", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 2785, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2306:43:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2786, + "nodeType": "ExpressionStatement", + "src": "2306:43:14" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2788, + "name": "hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2734, + "src": "2381:13:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 2789, + "name": "_voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2728, + "src": "2396:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2790, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "2406:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2791, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 2597, + "src": "2406:15:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2792, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2423:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2423:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2787, + "name": "LogRedeemVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2622, + "src": "2364:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$_t_address_$returns$__$", + "typeString": "function (bytes32,string memory,uint256,address)" + } + }, + "id": 2794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2364:70:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2795, + "nodeType": "EmitStatement", + "src": "2359:75:14" + } + ] + }, + "documentation": null, + "id": 2797, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "redeem", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2728, + "name": "_voucher", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1731:15:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2727, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1731:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1730:17:14" + }, + "payable": false, + "returnParameters": { + "id": 2732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2731, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1763:4:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2730, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1763:4:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1762:6:14" + }, + "scope": 2798, + "src": "1715:726:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2799, + "src": "141:2302:14" + } + ], + "src": "0:2444:14" + }, + "legacyAST": { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Vouchers.sol", + "exportedSymbols": { + "Vouchers": [ + 2798 + ] + }, + "id": 2799, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2586, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:14" + }, + { + "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2587, + "nodeType": "ImportDirective", + "scope": 2799, + "sourceUnit": 2950, + "src": "26:59:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", + "file": "./ParatiiToken.sol", + "id": 2588, + "nodeType": "ImportDirective", + "scope": 2799, + "sourceUnit": 905, + "src": "86:28:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", + "file": "./Registry.sol", + "id": 2589, + "nodeType": "ImportDirective", + "scope": 2799, + "sourceUnit": 1157, + "src": "115:24:14", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 2590, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2949, + "src": "162:7:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$2949", + "typeString": "contract Ownable" + } + }, + "id": 2591, + "nodeType": "InheritanceSpecifier", + "src": "162:7:14" + } + ], + "contractDependencies": [ + 2949 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 2798, + "linearizedBaseContracts": [ + 2798, + 2949 + ], + "name": "Vouchers", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 2593, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "177:24:14", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2592, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "177:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "public" + }, + { + "canonicalName": "Vouchers.Data", + "id": 2598, + "members": [ + { + "constant": false, + "id": 2595, + "name": "_claimant", + "nodeType": "VariableDeclaration", + "scope": 2598, + "src": "230:17:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2594, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "230:7:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2597, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2598, + "src": "257:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2596, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "257:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "name": "Data", + "nodeType": "StructDefinition", + "scope": 2798, + "src": "208:68:14", + "visibility": "public" + }, + { + "constant": false, + "id": 2602, + "name": "vouchers", + "nodeType": "VariableDeclaration", + "scope": 2798, + "src": "282:41:14", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data)" + }, + "typeName": { + "id": 2601, + "keyType": { + "id": 2599, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "291:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "282:25:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data)" + }, + "valueType": { + "contractScope": null, + "id": 2600, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2598, + "src": "302:4:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data" + } + } + }, + "value": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 2608, + "name": "LogCreateVoucher", + "nodeType": "EventDefinition", + "parameters": { + "id": 2607, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2604, + "indexed": false, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2608, + "src": "353:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2603, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "353:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2606, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2608, + "src": "377:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2605, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "377:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "352:38:14" + }, + "src": "330:61:14" + }, + { + "anonymous": false, + "documentation": null, + "id": 2612, + "name": "LogRemoveVoucher", + "nodeType": "EventDefinition", + "parameters": { + "id": 2611, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2610, + "indexed": false, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2612, + "src": "419:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2609, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "419:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "418:24:14" + }, + "src": "396:47:14" + }, + { + "anonymous": false, + "documentation": null, + "id": 2622, + "name": "LogRedeemVoucher", + "nodeType": "EventDefinition", + "parameters": { + "id": 2621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2614, + "indexed": false, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "471:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2613, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "471:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2616, + "indexed": false, + "name": "_voucher", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "495:15:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2615, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "495:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2618, + "indexed": false, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "512:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2617, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "512:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2620, + "indexed": false, + "name": "_claimant", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "526:17:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2619, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "526:7:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "470:74:14" + }, + "src": "448:97:14" + }, + { + "body": { + "id": 2642, + "nodeType": "Block", + "src": "580:108:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2625, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "599:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "599:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 2627, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "613:5:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "599:19:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2629, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "598:21:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2630, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "624:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "624:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "417661746172", + "id": 2634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "659:8:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + }, + "value": "Avatar" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_29a36bb22f3c260ddca59a40dffde48863da1d6fba3d1f55dedde5c8e1942577", + "typeString": "literal_string \"Avatar\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2632, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2593, + "src": "638:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "638:20:14", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "638:30:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "624:44:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 2637, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "623:46:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "598:71:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2624, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "590:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "590:80:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2640, + "nodeType": "ExpressionStatement", + "src": "590:80:14" + }, + { + "id": 2641, + "nodeType": "PlaceholderStatement", + "src": "680:1:14" + } + ] + }, + "documentation": null, + "id": 2643, + "name": "onlyOwnerOrAvatar", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2623, + "nodeType": "ParameterList", + "parameters": [], + "src": "577:2:14" + }, + "src": "551:137:14", + "visibility": "internal" + }, + { + "body": { + "id": 2657, + "nodeType": "Block", + "src": "733:65:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2648, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2897, + "src": "743:5:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2649, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "751:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "751:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "743:18:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2652, + "nodeType": "ExpressionStatement", + "src": "743:18:14" + }, + { + "expression": { + "argumentTypes": null, + "id": 2655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 2653, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2593, + "src": "771:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 2654, + "name": "_registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2645, + "src": "782:9:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "src": "771:20:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2656, + "nodeType": "ExpressionStatement", + "src": "771:20:14" + } + ] + }, + "documentation": null, + "id": 2658, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2646, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2645, + "name": "_registry", + "nodeType": "VariableDeclaration", + "scope": 2658, + "src": "706:18:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + }, + "typeName": { + "contractScope": null, + "id": 2644, + "name": "Registry", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1156, + "src": "706:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "705:20:14" + }, + "payable": false, + "returnParameters": { + "id": 2647, + "nodeType": "ParameterList", + "parameters": [], + "src": "733:0:14" + }, + "scope": 2798, + "src": "694:104:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2661, + "nodeType": "Block", + "src": "864:3:14", + "statements": [] + }, + "documentation": null, + "id": 2662, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2659, + "nodeType": "ParameterList", + "parameters": [], + "src": "846:2:14" + }, + "payable": true, + "returnParameters": { + "id": 2660, + "nodeType": "ParameterList", + "parameters": [], + "src": "864:0:14" + }, + "scope": 2798, + "src": "838:29:14", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2693, + "nodeType": "Block", + "src": "952:155:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 2672, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2666, + "src": "970:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2673, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "980:1:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "970:11:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2671, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "962:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "962:20:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2676, + "nodeType": "ExpressionStatement", + "src": "962:20:14" + }, + { + "expression": { + "argumentTypes": null, + "id": 2686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2677, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "992:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2679, + "indexExpression": { + "argumentTypes": null, + "id": 2678, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2664, + "src": "1001:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "992:24:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1032:1:14", + "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": 2681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1024:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1024:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 2684, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2666, + "src": "1036:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2680, + "name": "Data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2598, + "src": "1019:4:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Data_$2598_storage_ptr_$", + "typeString": "type(struct Vouchers.Data storage pointer)" + } + }, + "id": 2685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1019:25:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_memory", + "typeString": "struct Vouchers.Data memory" + } + }, + "src": "992:52:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "id": 2687, + "nodeType": "ExpressionStatement", + "src": "992:52:14" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2689, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2664, + "src": "1076:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 2690, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2666, + "src": "1092:7:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2688, + "name": "LogCreateVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2608, + "src": "1059:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (bytes32,uint256)" + } + }, + "id": 2691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1059:41:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2692, + "nodeType": "EmitStatement", + "src": "1054:46:14" + } + ] + }, + "documentation": null, + "id": 2694, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2669, + "modifierName": { + "argumentTypes": null, + "id": 2668, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2643, + "src": "934:17:14", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "934:17:14" + } + ], + "name": "create", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2667, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2664, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2694, + "src": "889:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2663, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "889:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 2666, + "name": "_amount", + "nodeType": "VariableDeclaration", + "scope": 2694, + "src": "913:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2665, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "913:4:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "888:38:14" + }, + "payable": false, + "returnParameters": { + "id": 2670, + "nodeType": "ParameterList", + "parameters": [], + "src": "952:0:14" + }, + "scope": 2798, + "src": "873:234:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2710, + "nodeType": "Block", + "src": "1178:95:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 2704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1188:31:14", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2701, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "1195:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2703, + "indexExpression": { + "argumentTypes": null, + "id": 2702, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2696, + "src": "1204:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1195:24:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2705, + "nodeType": "ExpressionStatement", + "src": "1188:31:14" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2707, + "name": "_hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2696, + "src": "1251:14:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 2706, + "name": "LogRemoveVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2612, + "src": "1234:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", + "typeString": "function (bytes32)" + } + }, + "id": 2708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1234:32:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2709, + "nodeType": "EmitStatement", + "src": "1229:37:14" + } + ] + }, + "documentation": null, + "id": 2711, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [ + { + "arguments": null, + "id": 2699, + "modifierName": { + "argumentTypes": null, + "id": 2698, + "name": "onlyOwnerOrAvatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2643, + "src": "1160:17:14", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1160:17:14" + } + ], + "name": "remove", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2696, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2711, + "src": "1129:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2695, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1129:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1128:24:14" + }, + "payable": false, + "returnParameters": { + "id": 2700, + "nodeType": "ParameterList", + "parameters": [], + "src": "1178:0:14" + }, + "scope": 2798, + "src": "1113:160:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2725, + "nodeType": "Block", + "src": "1440:61:14", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2721, + "name": "_voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2713, + "src": "1484:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2719, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3331, + "src": "1467:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1467:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1467:26:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2718, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3338, + "src": "1457:9:14", + "typeDescriptions": { + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" + } + }, + "id": 2723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1457:37:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 2717, + "id": 2724, + "nodeType": "Return", + "src": "1450:44:14" + } + ] + }, + "documentation": null, + "id": 2726, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "hashVoucher", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2713, + "name": "_voucher", + "nodeType": "VariableDeclaration", + "scope": 2726, + "src": "1379:15:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2712, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1379:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1378:17:14" + }, + "payable": false, + "returnParameters": { + "id": 2717, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2716, + "name": "_hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2726, + "src": "1416:22:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2715, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1416:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1415:24:14" + }, + "scope": 2798, + "src": "1358:143:14", + "stateMutability": "pure", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 2796, + "nodeType": "Block", + "src": "1769:672:14", + "statements": [ + { + "assignments": [ + 2734 + ], + "declarations": [ + { + "constant": false, + "id": 2734, + "name": "hashedVoucher", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1846:21:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 2733, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1846:7:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2738, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2736, + "name": "_voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2728, + "src": "1882:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2735, + "name": "hashVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2726, + "src": "1870:11:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (string memory) pure returns (bytes32)" + } + }, + "id": 2737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1870:21:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1846:45:14" + }, + { + "assignments": [ + 2740 + ], + "declarations": [ + { + "constant": false, + "id": 2740, + "name": "voucher", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1901:20:14", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data" + }, + "typeName": { + "contractScope": null, + "id": 2739, + "name": "Data", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 2598, + "src": "1901:4:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2744, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2741, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "1924:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2743, + "indexExpression": { + "argumentTypes": null, + "id": 2742, + "name": "hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2734, + "src": "1933:13:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1924:23:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1901:46:14" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2746, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "1965:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2747, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 2597, + "src": "1965:15:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "hexValue": "30", + "id": 2748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1983:1:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1965:19:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2745, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1957:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2750, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1957:28:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2751, + "nodeType": "ExpressionStatement", + "src": "1957:28:14" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2753, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "2003:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2754, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_claimant", + "nodeType": "MemberAccess", + "referencedDeclaration": 2595, + "src": "2003:17:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 2756, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2032:1:14", + "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": 2755, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2024:7:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 2757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2024:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2003:31:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2752, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3347, + 3348 + ], + "referencedDeclaration": 3347, + "src": "1995:7:14", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 2759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1995:40:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2760, + "nodeType": "ExpressionStatement", + "src": "1995:40:14" + }, + { + "expression": { + "argumentTypes": null, + "id": 2767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 2761, + "name": "vouchers", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "2113:8:14", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", + "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" + } + }, + "id": 2763, + "indexExpression": { + "argumentTypes": null, + "id": 2762, + "name": "hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2734, + "src": "2122:13:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2113:23:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage", + "typeString": "struct Vouchers.Data storage ref" + } + }, + "id": 2764, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_claimant", + "nodeType": "MemberAccess", + "referencedDeclaration": 2595, + "src": "2113:33:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2765, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2149:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2149:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2113:46:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2768, + "nodeType": "ExpressionStatement", + "src": "2113:46:14" + }, + { + "assignments": [ + 2770 + ], + "declarations": [ + { + "constant": false, + "id": 2770, + "name": "token", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "2225:18:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + }, + "typeName": { + "contractScope": null, + "id": 2769, + "name": "ParatiiToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 904, + "src": "2225:12:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 2777, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50617261746969546f6b656e", + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2280:14:14", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 2772, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2593, + "src": "2259:8:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" + } + }, + "id": 2773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "2259:20:14", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" + } + }, + "id": 2775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2259:36:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2771, + "name": "ParatiiToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 904, + "src": "2246:12:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" + } + }, + "id": 2776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2246:50:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2225:71:14" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2781, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2321:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2321:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2783, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "2333:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2784, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 2597, + "src": "2333:15:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 2778, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2770, + "src": "2306:5:14", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ParatiiToken_$904", + "typeString": "contract ParatiiToken" + } + }, + "id": 2780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "transfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 3013, + "src": "2306:14:14", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" + } + }, + "id": 2785, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2306:43:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2786, + "nodeType": "ExpressionStatement", + "src": "2306:43:14" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 2788, + "name": "hashedVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2734, + "src": "2381:13:14", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 2789, + "name": "_voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2728, + "src": "2396:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2790, + "name": "voucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2740, + "src": "2406:7:14", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", + "typeString": "struct Vouchers.Data storage pointer" + } + }, + "id": 2791, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 2597, + "src": "2406:15:14", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 2792, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "2423:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2423:10:14", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2787, + "name": "LogRedeemVoucher", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2622, + "src": "2364:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$_t_address_$returns$__$", + "typeString": "function (bytes32,string memory,uint256,address)" + } + }, + "id": 2794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2364:70:14", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2795, + "nodeType": "EmitStatement", + "src": "2359:75:14" + } + ] + }, + "documentation": null, + "id": 2797, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "redeem", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2729, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2728, + "name": "_voucher", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1731:15:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2727, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1731:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1730:17:14" + }, + "payable": false, + "returnParameters": { + "id": 2732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2731, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 2797, + "src": "1763:4:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2730, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1763:4:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1762:6:14" + }, + "scope": 2798, + "src": "1715:726:14", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 2799, + "src": "141:2302:14" + } + ], + "src": "0:2444:14" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-07-14T17:23:22.065Z" +} \ No newline at end of file